Bạn có thể chỉ định thuộc tính FinalName để đặt tên jar mà bạn muốn và chỉ định rằng appendAss lanhId phải là sai để tránh hậu tố "jar-with- Depencies ".
Cấu hình bên dưới sẽ xuất ra một tệp có tên "test.jar"
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-4</version>
<executions>
<execution>
<id>jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<finalName>test</finalName>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>
Cập nhật: dựa trên nhận xét của bạn, sử dụng bộ mô tả tích hợp sẽ không hoạt động. Tôi tin rằng đây là một lỗi trong các phiên bản gần đây của plugin lắp ráp - họ đã xóa hỗ trợ cho các trình phân loại, nhưng id đã được sửa nếu bạn sử dụng một mô tả tích hợp, do đó bạn kết thúc bằng một tên giả lớn.
Như một giải pháp thay thế, bạn có thể sao chép bộ mô tả lắp ráp được sử dụng bởi bộ mô tả jar-with-phụ thuộc và sửa đổi id.
Ví dụ này sẽ dẫn đến id tập hợp được gắn vào tên cuối cùng, vì vậy nếu bạn cần có tên của vùng-full.jar , bạn có thể chỉ định tên cuối cùng là vùng và id lắp ráp là đầy đủ . Điều này sẽ dẫn đến một tệp trong mục tiêu được gọi là area-full.jar, nhưng lưu ý rằng nó vẫn sẽ được cài đặt vào kho lưu trữ Maven dưới dạng một tạo phẩm đính kèm với đầy đủ được sử dụng làm trình phân loại. Miễn là id này khác với id cho hội đồng khác của bạn, không nên có xung đột.
Cấu hình pom sẽ như thế này.
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-4</version>
<executions>
<execution>
<id>jar-with-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/jar-assembly.xml</descriptor>
</descriptors>
<finalName>region</finalName>
</configuration>
</execution>
</executions>
</plugin>
và jar-assembly.xml trong src / main / assembly như thế này:
<assembly>
<id>full</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<unpack>true</unpack>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.outputDirectory}</directory>
</fileSet>
</fileSets>
</assembly>