Tutorial Apache ANT: Apa itu Alat Pembuatan Ant? Contoh
⚡ Ringkasan Cerdas
Apache ANT adalah sebuah Java Alat bantu pembuatan berbasis XML yang mengotomatiskan kompilasi, pengujian, pengemasan, dan penyebaran melalui file pembuatan XML. Artikel ini mendefinisikan alat tersebut, tracsejarahnya, meliputi Windows instalasi, menjelaskan struktur proyek, dan membandingkannya dengan Maven dan Gradle.
Apa itu Alat Bangun?
Alat build adalah alat pemrograman yang digunakan untuk membangun versi baru suatu program. Ini mengotomatiskan pembuatan aplikasi yang dapat dieksekusi dari kode sumber apa pun.
Tanpa alat bantu pembuatan (build tool), seorang pengembang akan secara manual mengkompilasi setiap file sumber, menyalin sumber daya, menjalankan rangkaian pengujian, dan mengemas hasilnya setiap kali ada perubahan. Alat bantu pembuatan merekam langkah-langkah tersebut sekali dan mengulanginya secara identik di setiap mesin.
Apa itu Semut Apache?
Apache Semut adalah Javaalat baris perintah berbasis untuk membangun Java aplikasi dengan portabilitas penuh murni Java Ant memungkinkan pengembang untuk mengadopsi prinsip-prinsip agile dan pengembangan berbasis pengujian (test-driven development) untuk mengotomatiskan tugas-tugas pengembangan yang berulang seperti pembuatan dokumentasi. Ant adalah akronim dari Another Neat Tool (Alat Keren Lainnya).
Seperti yang ditunjukkan diagram, Ant membaca file build, menentukan urutan target di dalamnya, dan kemudian menjalankan tugas-tugas individual yang mengkompilasi, menyalin, menguji, dan mengemas aplikasi.
Untuk apa alat Apache Ant Build digunakan?
Berikut adalah manfaat penting menggunakan alat pembuatan (build tool):
- Alat bantu pengembangan (build tool) memungkinkan Anda untuk mengotomatiskan tugas-tugas berulang tertentu seperti mengkompilasi kode sumber, menjalankan pengujian perangkat lunak, dan membuat file untuk penyebaran perangkat lunak.
- Alat pembangunan sebagian besar berjalan tanpa antarmuka pengguna grafis.
- Ini membantu Anda mengubah kode sumber menjadi kode yang dapat dieksekusi.
- Fitur ini menawarkan opsi untuk mengkompilasi ulang file hanya jika diperlukan.
- Ini memungkinkan Anda untuk mengkompilasi sejumlah besar file dalam waktu yang relatif singkat.
- Dua alat pembangunan yang sangat populer digunakan oleh Java Pengembangnya adalah Apache. Maven dan Semut.
Sejarah Semut Apache
Sekarang kita akan mempelajari sejarah alat pengembangan Apache Ant.
Berikut adalah landmark bersejarah penting dari alat Apache Ant:
- James Duncan Davidson menciptakan Ant pada Juli 2000.
- Awalnya, komponen ini digunakan untuk membangun Tomcat dan merupakan produk bawaan dari paket distribusi Tomcat.
- Pada Mei 2014, Apache Ant versi 1.9.4 dirilis dengan banyak fitur canggih.
- Seri 1.10.x dimulai pada tahun 2017 dan tetap menjadi cabang yang aktif dipelihara.
- Versi 1.10.17 dirilis pada 10 April 2026 dan membutuhkan minimal Java 8 waktu eksekusi.
Fitur Apache Semut
Berikut adalah fitur-fitur penting dari Apache Ant:
- Ini adalah proyek sumber terbuka.
- Ini memungkinkan Anda menjalankan build di kedua perangkat. Windows dan sistem UNIX atau Linux.
- Anda hanya membutuhkan sebuah FMV, karena dapat dijalankan di mana pun JVM tersedia.
- Aplikasi ini menawarkan berbagai macam tugas yang telah ditentukan sebelumnya.
- Ini membantu Anda menyalin file dari satu lokasi ke lokasi lain.
- Fitur ini menawarkan antarmuka untuk mengembangkan tugas khusus.
- Ini memungkinkan Anda untuk menjalankan proses build dari baris perintah, yang terintegrasi dengan mudah dengan IDE gratis dan komersial.
- Ini memungkinkan Anda untuk menyebarkan file biner ke server pengujian.
- Sistem ini menawarkan arsitektur yang dapat diperluas.
- Fitur ini menawarkan kompatibilitas mundur antar rilis.
Cara Install dan Konfigurasi Apache Ant di Windows
Sekarang kita akan mempelajari proses instalasi Apache Ant pada Windows.
Kami berasumsi bahwa Anda telah mengunduh dan menginstal Java Kit Pengembangan Instal JDK di komputer Anda. Pastikan variabel lingkungan JAVA_HOME diatur ke folder tempat JDK Anda diinstal. Ikuti langkah-langkah di bawah ini untuk menginstal Ant:
Langkah 1) Unduh binari.
Unduh binari dari https://ant.apache.org/bindownload.cgi
Langkah 2) Buka zip file.
Ekstrak file zip ini ke lokasi yang mudah diakses, misalnya c:\folder, menggunakan WinZip, WinRAR, 7-Zipatau alat serupa.
Langkah 3) Buat variabel lingkungan.
Buat variabel lingkungan untuk “ANT_HOME” dan tetapkan nilai variabel tersebut ke lokasi folder Ant.
- Klik kanan pada ikon Komputer Ini.
- Klik pada Properties.
Langkah 4) Buka pengaturan sistem.
Klik pada "Pengaturan sistem lanjutan".
Langkah 5) Pada properti sistem,
Klik pada tab “Lanjutan”.
Langkah 6) Temukan variabel lingkungan.
Klik tombol “Variabel lingkungan…”.
Langkah 7) Buat variabel baru.
Klik "Baru" untuk membuat variabel pengguna baru.
Langkah 8) Masukkan detail variabel.
Masukkan detail variabel pengguna baru.
- Masukkan nama variabel sebagai ANT_HOME.
- Masukkan nilai variabel sebagai folder tempat Ant diekstrak, misalnya C:\apache-ant-1.10.17.
- Klik pada tombol "Oke".
Langkah 9) Variabel telah dibuat.
Klik pada tombol "Oke".
Langkah 10) Tutup layar.
Klik "OK" untuk menutup layar.
đź’ˇ Kiat: ANT_HOME harus mengarah ke folder instalasi itu sendiri, bukan ke folder bin di dalamnya. Kemudian tambahkan %ANT_HOME%\bin ke variabel Path, sehingga perintah ant dapat dikenali dari direktori mana pun.
Anda dapat memverifikasi keberhasilan instalasi Ant dengan mengetikping Perintah “ant -version” di command prompt.
Anda akan melihat layar berikut:
Contoh Apache ANT
File build di bawah ini mendefinisikan satu target bernama hello yang mencetak pesan. Elemen proyek mendeklarasikan nama dan target default, sehingga Ant tahu apa yang harus dijalankan ketika tidak ada target yang disebutkan pada baris perintah.
<?xml version="1.0"?> <project name="HelloWorld" default="hello" basedir="."> <target name="hello"> <echo>Hello, World</echo> </target> </project>
Simpan file ini sebagai “build.xml”, lalu ikuti dua langkah berikut:
- Buka command prompt dan masuk ke direktori yang berisi build.xml.
- Run
ant hello, atau sederhanaant, karena hello dideklarasikan sebagai target default. Untuk menggunakan nama file yang berbeda, jalankanant -f mybuild.xml hello.
Keluaran:
Buildfile: C:\projects\demo\build.xml
hello:
[echo] Hello, World
BUILD SUCCESSFUL
Total time: 0 seconds
Struktur Proyek ANT
Struktur Proyek ANT
Seperti yang ditunjukkan diagram struktur, setiap pembangunan akan berisi tiga node:
- Project
- Target
- tugas
Project
Segala sesuatu di dalam file build di Apache ANT berada dalam proyek.
Atribut:
- Nama: Nama proyek tersebut.
- Basedir: Ini adalah direktori tempat semua jalur akan dihitung. Ini dapat diubah dengan menggunakan properti "basedir".
- Default: Membantu Anda menentukan target default untuk proyek ini. Jika tidak ada target yang diberikan, maka Ant akan menjalankan target default.
Target
Target adalah serangkaian tugas yang didefinisikan untuk mencapai keadaan tertentu dalam proses pembangunan.
Atribut:
- Nama: Nama target (wajib diisi).
- Description: Description dari target.
- Bergantung: Target mana yang menjadi dasar target saat ini.
- Jika: Menjalankan target hanya jika nilai telah ditetapkan untuk properti target.
- Kecuali kalau: Menjalankan target hanya jika nilai properti belum diatur.
Tasks
Sebuah tugas adalah bagian kode yang dapat dieksekusi. Tugas memiliki banyak argumen atau atribut.
Pola metode umum untuk menulis sebuah tugas adalah:
<name attribute1="value" attribute2="value2"…/>
Anda dapat menggunakan tugas bawaan, atau Anda dapat membuat tugas sendiri. Tabel di bawah ini mencantumkan tugas-tugas yang muncul di hampir setiap Java berkas pembuatan.
| tugas | Tujuan | Atribut Khas |
|---|---|---|
| gema | Cetak pesan ke konsol. | pesan |
| mkdir | Buat direktori | dir |
| hapus | Menghapus file atau direktori | direktori, sertakan direktori kosong |
| Jawa | Menyusun Java berkas sumber | srcdir, destdir, includeantruntime |
| guci | Kemas kelas-kelas ke dalam arsip jar. | destfile, basedir |
| salinan | Salin file antar lokasi | file, todir |
| juni | Jalankan pengujian unit | haltonfailure, printsummary |
Contoh build.xml lengkap dengan beberapa pilihan. Targets
Sebuah file build yang realistis menggabungkan beberapa target menjadi satu. Atribut `depends` menjamin urutan tersebut, sehingga Ant membersihkan folder output, mengkompilasi kode sumber, dan baru kemudian membuat file JAR.
<?xml version="1.0"?> <project name="DemoApp" default="jar" basedir="."> <!-- reusable values --> <property name="src.dir" value="src"/> <property name="build.dir" value="build"/> <target name="clean" description="Remove previous output"> <delete dir="${build.dir}"/> </target> <target name="compile" depends="clean" description="Compile sources"> <mkdir dir="${build.dir}/classes"/> <javac srcdir="${src.dir}" destdir="${build.dir}/classes" includeantruntime="false"/> </target> <target name="jar" depends="compile" description="Package the jar"> <mkdir dir="${build.dir}/jar"/> <jar destfile="${build.dir}/jar/DemoApp.jar" basedir="${build.dir}/classes"> <manifest> <attribute name="Main-Class" value="com.guru99.Main"/> </manifest> </jar> </target> </project>
Keluaran:
Buildfile: C:\projects\DemoApp\build.xml
clean:
[delete] Deleting directory C:\projects\DemoApp\build
compile:
[mkdir] Created dir: C:\projects\DemoApp\build\classes
[javac] Compiling 3 source files to C:\projects\DemoApp\build\classes
jar:
[mkdir] Created dir: C:\projects\DemoApp\build\jar
[jar] Building jar: C:\projects\DemoApp\build\jar\DemoApp.jar
BUILD SUCCESSFUL
Total time: 1 second
Apache Ant vs Maven vs Gradle
Tiga alat pengembangan mendominasi Java ekosistem, dan masing-masing mengambil posisi yang berbeda tentang seberapa banyak struktur yang perlu diterapkan.
| Parameter | Apache Semut | Apache Maven | Gradle |
|---|---|---|---|
| Format skrip pembuatan | XML | XML | Groovy atau Kotlin DSL |
| Pendekatan | Bersifat prosedural, Anda menentukan setiap langkahnya. | Deklaratif, konvensi di atas konfigurasi | Deklaratif dengan ekstensi skrip |
| Manajemen ketergantungan | Tidak terintegrasi, ditambahkan melalui Apache Ivy. | Dibangun dengan repositori pusat. | Terintegrasi, kompatibel dengan Maven |
| Struktur proyek | Sepenuhnya gratis | Tata letak standar tetap | Berdasarkan konvensi tetapi dapat diabaikan. |
| Bangunan tambahan | Terbatas | Terbatas | Ya, dengan cache build. |
| Kurva belajar | Rendah untuk pengguna XML | Moderat | Lebih curam, membutuhkan DSL |
| Paling cocok untuk | Proyek lama dan pembangunan yang sangat khusus | Standar Java memprojeksikan | Modul multi-besar dan Android memprojeksikan |
Ant tetap menjadi pilihan pragmatis ketika sebuah pembangunan tidak sesuai dengan tata letak standar, atau ketika proyek yang sudah ada bergantung pada target yang ditulis tangan.
Praktik terbaik Menggunakan Apache Ant
Berikut beberapa praktik terbaik untuk menggunakan Apache Ant.
- Anda harus mengotomatiskan penomoran build menggunakan file properti.
- Implementasikan proses build yang dapat dikonfigurasi dengan bantuan file properti default dan build. File-file ini memungkinkan Anda untuk menyimpan properti yang mendefinisikan data untuk proses build Anda, seperti versi kompiler dan pengaturan optimasi.
- Anda dapat menggunakan kembali perpustakaan yang dibuat sebelumnya menggunakan file properti perpustakaan.
- Berikan atribut deskripsi pada setiap target, sehingga
ant -projecthelpMenampilkan ringkasan yang bermanfaat dari proses pembuatan. - Pisahkan target yang telah dibersihkan, dan jangan pernah menghapus direktori yang juga berisi file sumber.
Keuntungan Menggunakan Apache Ant
Berikut adalah manfaat menggunakan Apache Ant:
- Ant bersifat netral terhadap platform, sehingga membantu Anda mengelola properti yang berpusat pada platform seperti pemisah file.
- Ant memungkinkan Anda untuk melakukan tugas-tugas spesifik platform, seperti memodifikasi waktu modifikasi file menggunakan perintah 'touch'.
- Skrip semut ditulis menggunakan bahasa biasa. XMLJadi, jika Anda sudah familiar dengan XML, Anda akan dapat mempelajari Ant dengan cepat.
- Ant menawarkan daftar tugas yang telah ditentukan sebelumnya dalam jumlah besar.
- Ini menawarkan antarmuka untuk pengembangan.ping tugas yang disesuaikan.
- Anda dapat dengan mudah menjalankan Ant dari baris perintah, yang memungkinkan integrasi dengan IDE gratis dan komersial.
- Anda hanya membutuhkan JVM, sehingga dapat berjalan di mana pun JVM tersedia.
- Apache Ant adalah perpustakaan sumber terbuka yang memungkinkan pengguna mengakses kode sumber dan mereproduksinya.
- Apache Ant adalah alat lintas platform yang memungkinkan Anda untuk menangani Java classpath dan struktur direktori file dengan cara yang terjangkau.
- Apache Ant mudah dikembangkan menggunakan Java dan bahasa pemrograman lainnya.
- Apache Ant menawarkan dukungan bawaan untuk pengembangan J2EE, seperti kompilasi dan pengemasan EJB.
- Anda dapat menggunakannya untuk proyek pribadi kecil maupun untuk proyek perangkat lunak atau situs web berskala besar.
Ant sering dipasangkan dengan test runner dan continuous integration server. Lihat JUnit untuk lapisan pengujian, Jenkins untuk pembangunan terjadwal, dan menggunakan Apache Ant dengan Selenium untuk otomatisasi pengujian browser. Laporan yang dihasilkan selama proses build dapat ditampilkan dengan Laporan Jasper.














