我们当前的DevOps环境运行mvn package
,并在专用Maven存储库中自动部署jar工件,所有目标文件夹都会缓存以备将来使用。但该项目也有一个maven-assembly-plugin
设置,用于打包第二个jar文件(后缀为-jar-with-dependencies
的胖jar(。
我们不想要";胖罐子";以便由CCD_ 4生成并且在这种情况下与其他文件一起存储在该高速缓存中。
是否有一种方法可以通过命令行(或任何其他属性或环境变量(打开和关闭maven-assembly-plugin
,以便仅在明确需要时运行它?
您可以将属性assembly.skipAssembly
设置为true
。
在命令行上(使用-Dassembly.skipAssembly=true
(或在POM本身中。
最简单的方法(IMHO(是在自己的配置文件中定义插件。在您的pom.xml
中,您添加了一个profiles
部分,并在其中添加了包含插件的profile
:
<profiles>
<profile>
<id>assemble</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<!-- All the configuration you have for the plugin -->
</plugin>
</plugins>
</build>
</profile>
</profiles>
然后,默认情况下,此插件将不会被调用。当你想调用它时,你可以用-P
标志显式地启用这个配置文件:
mvn package -Passemble