Với Maven 2, cách đúng đắn để làm điều này là sử dụng Plugin Maven2 hội có tệp mô tả được xác định trước cho mục đích này và bạn chỉ có thể sử dụng trên dòng lệnh:
mvn assembly:assembly -DdescriptorId=jar-with-dependencies
Nếu bạn muốn làm cho tệp jar này có thể thực thi được, chỉ cần thêm lớp chính sẽ được chạy vào cấu hình plugin:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>my.package.to.my.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
Nếu bạn muốn tạo tập hợp đó như là một phần của quy trình xây dựng thông thường, bạn nên liên kết mục tiêu đơn hoặc thư mục ( assembly
mục tiêu CHỈ nên được chạy từ dòng lệnh) sang giai đoạn vòng đời ( package
có ý nghĩa), đại loại như sau:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>create-my-bundle</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
...
</configuration>
</execution>
</executions>
</plugin>
Điều chỉnh configuration
yếu tố cho phù hợp với nhu cầu của bạn (ví dụ với nội dung rõ ràng như đã nói).