2012-10-09 24 views
5

Tôi đang sử dụng plugin lắp ráp maven. trong pom.xml của tôi, kiểu pakaging: jar và tôi không sử dụng plugin maven jar.xoá lọ được tạo theo mặc định trong maven

Bất cứ khi nào tôi chạy gói sạch mvn, nó tạo 2 tệp jar: một là từ lắp ráp maven, một tệp khác được tạo theo mặc định (do loại đóng gói = jar). Tôi chỉ muốn giữ lại tệp jar được tạo bởi plugin assembly. Làm thế nào để làm điều đó?

+1

Tại sao không sử dụng thẻ được tạo theo mặc định (maven-jar-plugin)? – khmarbaise

Trả lời

12

Bạn có thể có lý do nhưng tôi nghi ngờ rằng đó là một giải pháp tốt để bỏ qua bình mặc định đang được xây dựng và triển khai.

Nhưng dù sao, đây là cách bạn có thể vô hiệu hóa bình mặc định đang được tạo.

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-assembly-plugin</artifactId> 
      <version>2.3</version> 
      <executions> 
       <execution> 
        <phase>package</phase> 
        <id>make-assembly</id> 
        <goals> 
         <goal>single</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <!-- some configuration of yours... --> 
      </configuration> 
     </plugin> 
     <plugin> 
      <artifactId>maven-jar-plugin</artifactId> 
      <version>2.3.1</version> 
      <executions> 
       <execution> 
        <id>default-jar</id> 
        <!-- put the default-jar in the none phase to skip it from being created --> 
        <phase>none</phase> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 
+0

Cảm ơn maba. Nó hoạt động. trong tập tin jar của tôi, tôi cần phải nhúng một số jar khác, tập tin cấu hình xml bên trong. Đó là lý do tôi sử dụng maven-lắp ráp (tôi không biết nếu maven jar có thể giúp tôi làm điều đó). Và vì tệp jar được tạo theo mặc định là vô dụng (do thiếu các tệp khác được nhúng). Vì vậy, tôi thích ngừng tạo ra nó. Và chỉ tạo tệp jar bằng maven-assembly – David

+1

Tôi đã thực hiện các bước tương tự nhưng đối với tôi, bình mặc định vẫn được tạo. –