Di Java Bagaimana Cara Membuat file Arsip .jar / .tar.gz / .zip menggunakan maven-assembly-plugin? Tutorial Proyek Maven dan Perusahaan
Diterbitkan: 2020-10-07
Maven
cukup luar biasa. Dengan begitu banyak plugin, ini adalah salah satu Best Java Build tool
di pasaran saat ini.
Saya menggunakannya di semua proyek saya dan sangat bergantung padanya. Membangun kemungkinan tidak terbatas. Beberapa waktu yang lalu saya telah menulis tutorial yang berbeda pada begitu banyak plugin maven lainnya dan kali ini kita akan membahas maven-assembly-plugin
.
Plugin Majelis Maven bergantung pada deskriptor Majelis yang disediakan untuk mendikte eksekusinya.
Berikut adalah daftar tutorial plugin maven sebelumnya:
-
maven-war-plugin
– Buat file .war proyek. -
maven-resources-plugin
,maven-dependency-plugin
&maven-jar-plugin
– Bangun Proyek Java termasuk semua Dependensi? -
maven-shade-plugin
– Buat Java+Spring Based executable .jar dengan semua Dependensi, Properti, dan Sumber Daya yang Diperlukan.
Apakah Anda memiliki pertanyaan di bawah ini? Tutorial ini juga akan berhasil.
- Bagaimana cara membuat file jar dengan Maven?
- Cara menggunakan maven untuk membuat file jar dengan dependensi
- Gunakan pom.xml untuk membuat toples
- Cara terbaik untuk membuat maven jar tanpa ketergantungan
- Cara membuat maven jar termasuk dependensi
Mari kita mulai dengan maven-assembly-plugin
Langkah 1
Buat proyek Maven Baru di lingkungan Eclipse. Beri nama sebagai CrunchifyMavenBuildPlugins
. Jika Anda memiliki Proyek Web Dinamis atau Proyek Java, maka dengan menggunakan langkah-langkah ini Anda dapat mengonversi proyek menjadi proyek pakar. Setelah mengonversi proyek ke Maven, Anda akan melihat file pom.xml
yang dihasilkan yang kita perlukan untuk tutorial ini.
Berikut adalah struktur proyek saya. Saya menggunakan proyek saya yang sudah ada yang memiliki total 8 java files
di bawah paket /src/com/crunchify/tutorials
.

Langkah 2
Buka file pom.xml proyek Anda tambahkan <plugin></plugin>
baru terutama line 28 to 38
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
< project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns : xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi : schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < modelVersion > 4.0.0 < / modelVersion > < groupId > CrunchifyMavenBuildPlugins < / groupId > < artifactId > CrunchifyMavenBuildPlugins < / artifactId > < version > 0.0.1 - SNAPSHOT < / version > < name > CrunchifyMavenBuildPlugins < / name > < properties > < project . build . sourceEncoding > UTF - 8 < / project . build . sourceEncoding > < / properties > < dependencies > < dependency > < groupId > wsdl4j < / groupId > < artifactId > wsdl4j < / artifactId > < version > 1.6.3 < / version > < / dependency > < dependency > < groupId > com . google . zxing < / groupId > < artifactId > core < / artifactId > < version > 2.0 < / version > < / dependency > < / dependencies > < build > < plugins > < plugin > < artifactId > maven - assembly - plugin < / artifactId > < version > 2.5.3 < / version > < configuration > < descriptors > < descriptor > src / com / crunchify / assembly / crunchify . xml < / descriptor > < / descriptors > < tarLongFileMode > posix < / tarLongFileMode > < / configuration > < / plugin > < / plugins > < / build > < / project > |
Langkah-3
Buat file baru crunchify.xml
dan letakkan di bawah /src/com/crunchify/assembly
package. Kami telah merujuk file ini di file pom.xml
di atas.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
< assembly xmlns = "http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" xmlns : xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi : schemaLocation = "http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd" > < id > bundle < / id > < formats > < format > tar . gz < / format > < format > zip < / format > < format > tar < / format > < / formats > < includeBaseDirectory > false < / includeBaseDirectory > < fileSets > < fileSet > < directory > src / com / crunchify / tutorial < / directory > < outputDirectory > crunchify - output < / outputDirectory > < / fileSet > < / fileSets > < / assembly > |
Di sini kami mengekspor proyek kami ke dalam 3 <formats>
- tar.gz
- ritsleting
- ter
Tag <directory>
menunjukkan bahwa – dapatkan semuanya di bawah paket src/com/crunchify/tutorial
dan letakkan di bawah folder crunchify-output
yang disebutkan di bawah <outputDirectory>
.
Jika Anda ingin memasukkan semua konten seperti /src
atau /resource
folder maka Anda dapat menggunakan variasi yang berbeda di bawah ini:
- <directory>
src/com/crunchify/tutorial
</directory> - <direktori>
src
</direktori> : semuanya di bawah folder src - <direktori>
resources
</direktori> : semuanya di bawah folder sumber daya - <direktori>
/
</direktori> : semuanya
Langkah-4
Klik kanan pada proyek CrunchifyMavenBuildPlugins => Run As
=> Maven build

- Memberikan Tujuan sebagai
clean assembly:assembly
- Klik
Apply
- Klik
Run

Langkah-5
Anda akan melihat pesan BUILD SUCCESS
di konsol.
1 2 3 4 5 6 7 8 9 |
[ INFO ] --- maven - assembly - plugin : 2.5.3 : assembly ( default - cli ) @ CrunchifyMavenBuildPlugins --- [ INFO ] Reading assembly descriptor : src / com / crunchify / assembly / crunchify . xml [ INFO ] Building tar : / Users / crunchifyjavatutorials / CrunchifyMavenBuildPlugins / target / CrunchifyMavenBuildPlugins - 0.0.1 - SNAPSHOT - bundle . tar . gz [ INFO ] Building zip : / Users / crunchifyjavatutorials / CrunchifyMavenBuildPlugins / target / CrunchifyMavenBuildPlugins - 0.0.1 - SNAPSHOT - bundle . zip [ INFO ] Building tar : / Users / crunchifyjavatutorials / CrunchifyMavenBuildPlugins / target / CrunchifyMavenBuildPlugins - 0.0.1 - SNAPSHOT - bundle . tar [ INFO ] ------------------------------------------------------------------------ [ INFO ] BUILD SUCCESS [ INFO ] ------------------------------------------------------------------------ [ INFO ] Total time : 1.719 s |
Langkah-6
NOTE:
Anda tidak perlu melakukan langkah ini.

Apakah Anda mendapatkan kesalahan ini? Jika Anda melihat pesan kesalahan ini saat membangun perakitan maka Anda harus menambahkan baris di bawah ini ke file pom.xml.
1 |
< tarLongFileMode > posix < / tarLongFileMode > |
Saya mendapatkan kesalahan di atas pada upaya pertama saya. Jadi sudah menambahkan tarLongFileMode
ke file pom.xml di atas.
Langkah-7
Sekarang how to verify
? Silakan buka folder target
proyek Anda dan jalankan perintah di bawah ini untuk melihat .tag.gz file contents
Anda.
bash-3.2$ tar zxvf CrunchifyMavenBuildPlugins-0.0.1-SNAPSHOT-bundle.tar.gz

Beri tahu saya jika Anda memiliki pertanyaan dan menghadapi masalah dalam menjalankan ini.