“mvn clean install”和“mvn clean verify install”有什么区别?

时间:2018-04-27 19:53:45

标签: java eclipse maven tycho

我使用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阶段。这里发生了什么?

1 个答案:

答案 0 :(得分:3)

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

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