Jam
Tulisan ini tidak untuk membandingkan berbagai build tools yang tersedia, tetapi lebih ke
arah bagaimana memahami posisi Ant dan bagaimana kita bisa menggunakan Ant untuk
keperluan mempermudah membangun software.
Ant merupakan software untuk keperluan build tool yang bersifat cross platform, bisa
digunakan pada berbagai sistem operasi yang mendukung Java. Meskipun demikian,
pembahasan dalam tulisan ini akan menggunakan Linux. Jika anda menggunakan Windows,
silahkan sesuaikan dengan sistem operasi anda (hanya jika diperlukan). Selama tidak
menggunakan fitur spesifik dari sistem operasi yang bersangkutan (diantaranya dengan tag
<exec>), maka pembahasan ini bersifat cross platform.
Mengapa Harus Menggunakan Build Tool?
Build tool tidak diperlukan jika software yang akan kita bangun sangat sederhana (seperti
misalnya hanya menampilkan satu atau beberapa baris tulisan) dan kita tidak keberatan untuk
menuliskan dan mencantumkan berbagai dependencies dari software tersebut (misalnya
berbagai file jar yang kita perlukan). Jika aplikasi yang kita bangun relatif kompleks,
melibatkan banyak dependencies, dengan struktur direktori tertentu, serta memerlukan
banyak eksekusi atau menjalankan tools (misalnya jar, rmic, javac, bzip2, dan lain-lain),
maka kita memerlukan build tool untuk meng-otomatiskan proses membangun (compile,
test, run, deploy) software tersebut. Anda bisa membayangkan sendiri jika harus mengetikkan
berpuluh-puluh baris untuk siklus compile, test, run, deploy jika tidak menggunakan build
tool.
Instalasi Apache Ant
Ant adalah software bebas dan mempunyai lisensi ASF (Apache Software Foundation). Ant
bisa diperoleh di http://ant.apache.org. Versi terakhir saat tulisan ini dibuat adalah versi 1.7.1.
Download distribusi Ant seperti berikut ini:
[bpdp@bpdp-arch ant]$ ls -la
total 7484
drwxr-xr-x 2 bpdp users
4096 2009-09-01 03:08 .
drwxr-xr-x 26 bpdp users
4096 2009-09-19 17:37 ..
-rw-r--r-- 1 bpdp users 7641928 2008-07-09 16:19 apache-ant-1.7.1bin.tar.bz2
[bpdp@bpdp-arch ant]$
Asumsi:
Setelah itu setiap kali login, shell sudah mengenali ant yang telah kita install. Jika telah
terinstall dengan benar, hasil instalasi adalah sebagai berikut:
[bpdp@bpdp-arch software]$ ant -version
File build.xml merupakan file XML yang digunakan untuk mendeskripsikan proyek build
yang akan dikerjakan oleh Ant. Contoh sederhana untuk mengkompilasi dan menjalankan
program Java yang akan menampilkan string Hello World adalah sebagai berikut:
Struktur Direktori dan File
.
|-- build
|
`-- classes
`-- src
`-- simpleant
`-- HelloWorld.java
Catatan: Direktori simpleant ada di bawah src dan file HelloWorld.java ada di dalam direktori
simpleant.
Asumsi: hasil kompilasi akan diletakkan di direktori build/classes.
Tanpa Apache Ant Shell
$ javac -sourcepath src -d build/classes/ src/simpleant/HelloWorld.java
$ java -cp build/classes simpleant.HelloWorld
Hello World
$
build.xml
<project>
<target name="clean">
<delete dir="build"/>
</target>
<target name="compile">
<mkdir dir="build/classes"/>
<javac srcdir="src" destdir="build/classes"/>
</target>
<target name="jar">
<mkdir dir="build/jar"/>
<jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">
<manifest>
<attribute name="Main-Class" value="simpleant.HelloWorld"/>
</manifest>
</jar>
</target>
<target name="run">
<java jar="build/jar/HelloWorld.jar" fork="true"/>
</target>
</project>