mvn软件包验证导致maven-shade-plugin执行两次

时间:2020-06-18 20:11:19

标签: java maven maven-shade-plugin

我使用 maven-shade-plugin 来重新定位依赖项,以避免在我的项目中出现类路径冲突。当运行“ mvn install”时,一切运行良好,但是当我运行“ mvn install”两次时,它将第二次失败。我收到如下错误:

创建阴影jar时出错:重复的条目:META-INF /...

这是由于拥有此变压器:

<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"/>

不确定为什么会失败。这可能是一个错误。无论如何,如果不进行中间清理,我将无法运行该插件两次。

现在更大的问题是,在构建CI的过程中,我们运行“ mvn软件包验证” 。这将使Shade插件在构建中运行两次。当然,这是第二次失败。

我查看了有效的pom,没有发现任何异常。该插件不会重复两次。

是否可以通过某种方式将插件从验证阶段中排除?

2 个答案:

答案 0 :(得分:1)

运行mvn package verify是不明智的。

只需运行mvn verify,就可以了。

verify已包含package

答案 1 :(得分:0)

我解决了这个问题。看来 maven-source-plugin 正在干扰阴影插件。我正在使用源插件来提供重新定位的软件包的源代码。目标“聚合”以某种方式导致构建失败。删除总目标后,我不再遇到问题了