【问题标题】:mvn package verify causes the maven-shade-plugin to execute twicemvn package verify 导致 maven-shade-plugin 执行两次
【发布时间】:2020-06-18 20:11:19
【问题描述】:

我使用 ma​​ven-shade-plugin 重新定位依赖项,以避免项目中的类路径冲突。运行“mvn install”时一切正常,但是当我运行“mvn install”两次时,第二次会失败。我收到如下错误:

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

这是由于有这个转换器:

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

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

现在更大的问题是,在我们的 CI 构建期间,我们运行了 "mvn package verify"。这会导致 Shade 插件在构建中运行两次。当然,第二次失败了。

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

有没有什么方法可以在验证阶段排除插件运行?

【问题讨论】:

    标签: java maven maven-shade-plugin


    【解决方案1】:

    运行mvn package verify 是不明智的。

    只需运行 mvn verify 就可以了。

    verify 已经包含package

    【讨论】:

    • 我知道,但很遗憾我无法更改,它在 Jenkins 构建中,我无法修改。
    • 您是否已经与 Jenkins 管理员谈过并向他解释了这一点?
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-07
      • 2014-09-05
      • 2021-01-07
      • 1970-01-01
      • 1970-01-01
      • 2020-09-21
      • 2014-07-04
      • 1970-01-01
      相关资源
      最近更新 更多