mvn install 包含 mvn clean吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mvn install 包含 mvn clean吗相关的知识,希望对你有一定的参考价值。

Maven三大生命周期

•    生命周期Maven有三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,这三套生命周期分别是:

•    Clean Lifecycle 在进行真正的构建之前进行一些清理工作。

•    Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。

•    Site Lifecycle 生成项目报告,站点,发布站点。

•   再次强调一下它们是相互独立的,你可以仅仅调用clean来清理工作目录,仅仅调用site来生成站点。当然你也可以直接运行 mvn clean install site 运行所有这三套生命周期。

•   所以,不含。

参考技术A 第117回 阻超凡佳人双护玉 欣聚党恶子独承家 第118回 记微嫌舅兄欺弱女 惊谜语妻妾谏痴人

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

【中文标题】“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 install 包含 mvn clean吗的主要内容,如果未能解决你的问题,请参考以下文章

“mvn clean install”与“mvn install”有何不同?

mvn clean install 在做测试时卡住了 - 我错过了啥?

mvn clean package install deploy

如何在eclipse中使用mvn clean install

Run “mvn clean install” in Eclipse

mvn 使用方式