- package打包:将工程中所有目录、文件封装到一个压缩包中,Java工程:jar包;Web工程;war包。(打包成jar包或者war包由pom文件中签名决定)
- install安装:使用Maven时特有的概念,指将Maven工程打包的结果存入本地仓库
举个例子:
有a、b两个项目,b依赖a项目,而我们要编译b项目。
如果b项目依赖a项目,而a打了包(package),a.jar仅仅是打包到了a项目的target目录下。这时编译b项目,会报错找不到依赖的a项目,说明b项目在本地仓库是没有找到它所依赖的a项目。然后,我install(安装)a项目这时,有以下日志:
] Installing D:\IT学习\phs_v3\phs_pojo\target\phs_pojo-0.0.1.jar to D:\program\apache-maven-3.6.3\maven-repo\com\herenit\phs\pojo\phs_pojo\0.0.1\phs_pojo-0.0.1.jar
[INFO] Installing D:\IT学习\phs_v3\phs_pojo\pom.xml to D:\program\apache-maven-3.6.3\maven-repo\com\herenit\phs\pojo\phs_pojo\0.0.1\phs_pojo-0.0.1.pom
[INFO] Installing D:\IT学习\phs_v3\phs_pojo\target\phs_pojo-0.0.1-exec.jar to D:\program\apache-maven-3.6.3\maven-repo\com\herenit\phs\pojo\phs_pojo\0.0.1\phs_pojo-0.0.1-exec.jar
说明a项目已经安装到本地仓库了,并且jar和pom同时安装的,这时候再去compile(编译)b项目,b编译通过。这是因为a项目的jar包打包后通过install指令安装到了本地maven库下,b项目再次编译后就可以在本地maven库上找到且引用到他需要依赖的a项目jar包了
转自:https://blog.csdn.net/qq784515681/article/details/84302904