繁体   English   中英

仅在子 POM 上执行 Maven 程序集插件

[英]Execute maven assembly plugin only on child POMs

我有一个带有父 POM 的项目和三个带有的子项目。我想仅在一个子 POM 上执行目标程序集:程序集。 我已经阅读了以下帖子,但我没有让它与 Maven 程序集插件一起使用。

在子模块上执行 Maven 插件目标,但不在父模块上执行

如果我跑

mvn -DskipTests=true assembly:assembly

我收到以下错误:

[错误] 无法在项目内部执行目标 org.apache.maven.plugins:maven-assembly-plugin:2.2-beta-5:assembly (default-cli):读取程序集时出错:未找到程序集描述符。 -> [帮助 1]

似乎它总是解析插件配置并查找程序集描述符,即使如此,如果我根本不将插件放入父 POM 中。 有人有组装插件的解决方案吗?

正确的选项是: <skipAssembly>true</skipAssembly>以跳过父项目。

您可以在父 pom 属性中定义

<assembly.skipAssembly>true</assembly.skipAssembly>

并在您的模块 pom 属性中覆盖此属性

<assembly.skipAssembly>false</assembly.skipAssembly>

您可以在聚合pom.xml配置程序集插件以跳过执行。

<build><plugins>部分

<configuration><skip>true</skip></configuration>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM