maven package install deploy区别

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命令:

这里写图片描述



问题:

1.每一次我们把代码改了,push上去了之后,我们在使用xbox的在部署服务的时候,这个时候我们到底部署到服务器

的是什么?

答:对于当我把自己在本地的代码push上去之后,我们通过xbox进行配置,这个时候,这个时候,我们配置到服务器的时候

可能是war包也可能是各个的class文件(目前查看了一下,在xbox上面放的是jar包)

2.为什么我们有些时候在xbox部署类似于admin的项目,我们可能还要deploy其中的service项目。这个deploy是什么意思

答:是因为对于我们要部署admin的项目的时候,我们这个项目可能还要依赖service的这个项目,如果我们在service的时候

将其进行修改了,所以我们要升级一个版本号,对于admin我们就要依赖一个新的版本号的service的jar包,但是呢,这个

service的jar包只有我进行修改了,别人没有,线上的私服也没有,所以我们需要deploy的操作,把这个service的新的jar包

deploy到新的私服上面,对于我们在admin的时候,我们就可以调用新的service的jar包了,这个就是我们为什么需要在部署

admin的项目的时候我们需要deploy其中的service的项目,我们在如果修改了service中的代码以及core的代码之后,我们在

push项目的时候,我们也依旧需要把service以及core的jar包deploy上去,还有我们也需要改admin的调用这个的版本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值