1、maven package:打包到本项目,一般是在项目target目录下。
如果a项目依赖于b项目,打包b项目时,只会打包到b项目下target下,编译a项目时就会报错,因为找不到所依赖的b项目,说明a项目在本地仓库是没有找到它所依赖的b项目。
2、maven install:打包会安装到本地的maven仓库中,如果没有设置过maven本地仓库,一般在用户/.m2目录下。
如果a项目依赖于b项目,那么install b项目时,会在本地仓库同时生成pom文件和jar文件,
可以看install b的日志:
[INFO] — maven-install-plugin:2.5.2:install (default-install) @ b —
[INFO]Installing D:\Java\workspace\b\target\b-2.7.4.RELEASE.jar to
C:\mavenRepository\com**\b\2.7.4.RELEASE\b-2.7.4.RELEASE.jar [INFO]
Installing D:\java\workspace\b\pom.xml to
C:\mavenRepository\com**\b\2.7.4.RELEASE\b-2.7.4.RELEASE.pom说明b项目已安装到本地仓库了,并且是jar和pom同时安装的. 这时候去compile a项目,编译通过.
总结:
A、maven package:打包(jar等)到本项目的target下。
B、maven install:把target下打的包(jar等)安装到本地仓库,可以供其他项目使用。
3、maven deploy:将打包的文件发布到远程参考,提供其他人员进行下载依赖。
4、常用的maven命令:
5、拓展链接:
a、mvn clean install 与 mvn install 的区别
b、Maven用户手册】Maven命令