栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Maven JAR插件3.0.2错误:您必须使用分类器将补充工件附加到项目中,而不是替换它们

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Maven JAR插件3.0.2错误:您必须使用分类器将补充工件附加到项目中,而不是替换它们

Jar插件实际上是通过以下配置执行两次:

<plugin>  <artifactId>maven-jar-plugin</artifactId>  <version>3.0.2</version>  <executions>    <execution>      <goals>        <goal>jar</goal>      </goals>    </execution>  </executions></plugin>

如果使用这样的配置检查日志,将显示以下内容:

[INFO] --- maven-jar-plugin:3.0.2:jar (default-jar) @ test ---[INFO] Building jar: ...testtargettest-0.0.1-SNAPSHOT.jar[INFO] [INFO] --- maven-jar-plugin:3.0.2:jar (default) @ test ---[INFO] ------------------------------------------------------------------------[INFO] BUILD FAILURE[INFO] ------------------------------------------------------------------------

表示该插件实际上执行了两次。发生的情况是,在具有打包的项目中的Jar插件

jar
具有绑定到
package
phase
的默认执行
。此默认执行是ID为的日志中提到的执行
default-jar

当您配置的

<execution>
插件中,您实际配置的新的执行,其中
jar
插件的目标是要调用。由于
jar
目标默认绑定到
package
阶段,因此在
jar
打包固有的默认绑定之后,将在那个阶段执行该执行。而且由于该插件已经运行,所以失败了,因为再次运行它实际上会替换第一次运行时已经产生的主要工件。在MJAR-198的插件版本3.0.0中添加了此错误,因为这种情况很可能是错误配置,应尽早检测到。

这样,解决方法很简单:没有执行可指定目标的执行

jar
,而让默认目标(来自
jar
包装)进行工作。
jar
由于默认执行,即使没有明确配置目标,仍将创建JAR
。如果还需要测试JAR,则仍然需要配置插件以执行以下操作:

<plugin>  <artifactId>maven-jar-plugin</artifactId>  <version>3.0.2</version>  <executions>    <execution>      <goals>        <goal>test-jar</goal>      </goals>    </execution>  </executions></plugin>

但请注意,

jar
未指定目标。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/437945.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号