mvn clean install
和mvn install
之间的区别是什么?
答案 0 :(得分:176)
clean
是Maven中自己的构建生命周期阶段(可以被认为是一个动作或任务)。在为每个模块运行mvn clean install
阶段之前,clean
告诉Maven在每个模块中执行install
阶段。
这样做可以清除您拥有的任何编译文件,确保您真正从头开始编译每个模块。
答案 1 :(得分:39)
Maven允许您在命令行(或两者)上指定目标或生命周期阶段。
clean
和install
为two different lifecycle phases,different plugin executions are bound(默认情况下为explicitly in your pom.xml)
按照惯例,clean
阶段旨在使构建可重现,即它清理由先前构建创建的任何内容。在大多数情况下,它通过调用clean:clean
来执行此操作,删除绑定到${project.build.directory}
的目录(通常称为“目标”)
答案 2 :(得分:34)
您可以使用maven调用多个 target 目标。 mvn clean install
先调用clean
,然后调用install
。您必须手动清理,因为clean不是标准的目标目标,并且不会在每次安装时自动执行。
clean
删除目标文件夹 - 它删除所有类文件,java文档,jar,报告等。如果你没有clean
,那么maven只会“做必须做的事情”,就像当相应的源文件没有改变时那样不会编译类(简而言之)。
我们称之为蚂蚁中的目标和maven中的目标
答案 3 :(得分:22)
坚持使用Maven术语:
http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
答案 4 :(得分:3)
同样适用于@Andreas_D,另外如果你说在你的项目中将Spring从1个版本更新到另一个版本而不做一个干净,那么你将在你的工件中找到它们。在使用Maven进行Flex开发时,请充分考虑这一点。