mvn清洁包和mvn清洁安装之间到底有什么区别?当我运行这两个命令时,它们似乎都在做同样的事情。


当前回答

包将生成Jar/war作为每个POM文件。 Install会将生成的jar文件安装到本地存储库,用于其他依赖项。

安装阶段是在包阶段之后

其他回答

两者都能清洁。这意味着它们将删除目标文件夹。真正的问题是package和install之间的区别是什么?

Package将编译您的代码并打包它。例如,如果您的pom说该项目是一个jar,那么当您打包它并将其放在目标目录中的某个位置时(默认情况下),它将为您创建一个jar。

Install将编译和打包,但它也将把包放在本地存储库中。这将使其他项目可以引用它,并从本地存储库中获取它。

文档

包和安装是maven构建生命周期中的不同阶段。打包阶段将在此之前执行所有阶段&它将停止将项目打包为一个jar。类似地,安装阶段将执行之前的所有阶段,最后在本地为其他相关项目安装项目。

要了解maven构建生命周期,请访问以下链接https://ayolajayamaha.blogspot.in/2014/05/difference-between-mvn-clean-install.html

MVN package命令将编译源代码,并将其打包为jar或war作为pom文件,并将其放入目标文件夹(默认情况下)。

MVN install命令将编译和打包,但它也将把包放在本地存储库中。以便其他项目可以引用它并从本地存储库中获取它。

MVN install命令主要用于编译存储库中其他项目所依赖的项目(库)。

包将生成Jar/war作为每个POM文件。 Install会将生成的jar文件安装到本地存储库,用于其他依赖项。

安装阶段是在包阶段之后

package将添加jar或war到你的目标文件夹,我们可以检查它,我们清空目标文件夹(使用mvn clean),然后运行mvn package。 Install会做package所做的所有事情,此外,它还会在本地存储库中添加打包的jar或war。我们可以通过检查您的。m2文件夹来确认。