我正在使用maven assembly plugin。在我的pom.xml中,pakaging類型:jar和我不使用maven jar插件。刪除在maven中默認創建的jar文件
每當我運行mvn clean package時,它會創建2個jar文件:一個來自maven assembly,另一個默認創建(由於packaging type = jar)。我只想保留僅由assembly插件創建的jar文件。怎麼做?
我正在使用maven assembly plugin。在我的pom.xml中,pakaging類型:jar和我不使用maven jar插件。刪除在maven中默認創建的jar文件
每當我運行mvn clean package時,它會創建2個jar文件:一個來自maven assembly,另一個默認創建(由於packaging type = jar)。我只想保留僅由assembly插件創建的jar文件。怎麼做?
你可能有你的理由,但我懷疑這是跳過正在構建和部署的默認jar的好方案。
無論如何,這裏是如何禁用正在構建的默認jar。
<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>
感謝maba。有用。在我的jar文件中,我需要在其中嵌入一些其他jar,xml配置文件。這就是我使用maven-assembly的原因(我不知道maven jar是否可以幫助我做到這一點)。而且由於缺省創建的jar文件是無用的(由於缺少嵌入的其他文件)。所以我更喜歡停止創建它。並且只能通過maven-assembly創建jar文件 – David
我做了相同的步驟,但對我來說默認的jar仍然被創建。 –
爲什麼不使用默認創建的(maven-jar-plugin)? – khmarbaise