“mvn clean install”和“mvn clean verify install”有啥区别?

Posted

技术标签:

【中文标题】“mvn clean install”和“mvn clean verify install”有啥区别?【英文标题】:What is the difference between "mvn clean install" and "mvn clean verify install"?“mvn clean install”和“mvn clean verify install”有什么区别? 【发布时间】:2018-10-08 17:08:46 【问题描述】:

我正在使用 Tycho 插件来编译一个 Eclipse 插件项目。当我运行命令时

mvn clean install我的构建通过

当我运行命令时

mvn clean verify install 我的构建失败并显示以下内容:

[ERROR] Failed to execute goal org.eclipse.tycho:tycho-p2-plugin:1.1.0:
p2-metadata-default (default-p2-metadata-default) on project 
com.mysite.project: 
Execution default-p2-metadata-default of goal 
org.eclipse.tycho:tycho-p2-plugin:1.1.0:p2-metadata-default failed. 
IllegalArgumentException -> [Help 1]

失败的堆栈跟踪是:

    at org.eclipse.tycho.p2.impl.publisher.P2GeneratorImpl.getCanonicalArtifact(P2GeneratorImpl.java:193)
    at org.eclipse.tycho.p2.impl.publisher.P2GeneratorImpl.generateMetadata(P2GeneratorImpl.java:146)
    at org.eclipse.tycho.plugins.p2.P2MetadataMojo.attachP2Metadata(P2MetadataMojo.java:149)
    at org.eclipse.tycho.plugins.p2.P2MetadataMojo.execute(P2MetadataMojo.java:108)
    at org.eclipse.tycho.plugins.p2.P2MetadataDefaultMojo.execute(P2MetadataDefaultMojo.java:33)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
    ... 21 more

根据我在 Maven 上可以找到的所有内容,调用 install 阶段应该会隐式触发 verify 阶段。这里发生了什么?

【问题讨论】:

也许可以帮助:***.com/questions/16602017/… 这个 Eclipse 错误是否相关?...Bug 428950 - IllegalArgumentException thrown by P2GeneratorImpl.getCanonicalArtifact when generating p2 metadata with P2MetadataMojo @skomisa 我检查了该票中描述的原因(语法正确,语义不正确),但这似乎不是问题。 您列出的每个阶段都将运行构建生命周期,直到并包括该阶段。因此“mvn verify install”将有效地执行“mvn verify”,然后执行“mvn install”,这意味着(大部分)构建生命周期将执行两次。 “mvn clean verify”是否通过? “mvn clean verify verify”是否通过? 【参考方案1】:

就个人而言,我从不在使用 tycho 时使用mvn install,因为它会将捆绑包安装到您的本地存储库中,并且由于您正在构建 eclipse捆绑包,您不必将它们推送到您的 Maven 存储库。 回到您的问题,不需要在单个命令中调用两个阶段,因为安装阶段应该触发验证阶段。

所以只使用mvn verify 来构建您的产品或只使用mvn install 来实现完全相同的目标(并将构建的工件推送到您的本地存储库中)

【讨论】:

以上是关于“mvn clean install”和“mvn clean verify install”有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

如何在eclipse中使用mvn clean install

Run “mvn clean install” in Eclipse

mvn clean install对idea中项目结构的影响

当尝试 mvn clean install -> 出现错误包不存在

pom.xml配置,针对mvn clean install -P参数(环境参数)打包

mvn clean install vs. deploy vs. release