0.前言
我们在使用maven构建项目时,经常会用到打包命令,mvn install、mvn package、mvn deploy 都可以打包,但是有有所区别。
1.区别
先上图:
mvn clean package
mvn clean install
可以看出mvn clean package执行了
clean、resources、compile、testResources、testCompile、test、jar(打包)7步
mvn clean install执行了
clean、resources、compile、testResources、testCompile、test、jar、install 8步
mvn clean deploy执行了
clean、resources、compile、testResources、testCompile、test、jar、install、deploy 9步
区别:
mvn package
:打包到本项目,一般在项目target
目录下。mvn install
:打包到本地仓库,如果没设置Maven
本地仓库,一般在用户/.m2
目录下。mvn deploy
:打包上传到远程仓库,如:私服nexus
等,需要配置pom
文件。
总结:
package
命令:完成项目编译、单元测试、打包功能,但打包文件未部署到本地Maven
仓库和远程Maven
仓库。install
命令:完成项目编译、单元测试、打包功能,同时把打包文件部署到本地Maven
仓库,但未部署到远程Maven
仓库。deploy
命令:完成项目编译、单元测试、打包功能,同时把打包文件部署到本地Maven
仓库和远程Maven
仓库。