maven 编译过程及package,install,deploy的区别

Maven作为依赖管理工具,能够管理规模庞大jar包。使用Maven后,依赖对应的Jar包能够自动下载、方便、快捷且规范。

Maven作为构建管理工具。当我们使用 IDEA 进行开发时,构建是 IDEA 替我们做的。脱离IDEA环境执行构建操作,需要专门工具。

1.构建:

构建构建指的是使用Java源码、图片、配置文件等生产一个可以在服务器上运行项目的过程

构建的过程包含以下主要环节:

清理clean:删除上一次构建的结果,为下一次构建做好准备
验证validate: 验证项目是否正确,并且其中有必要信息是否都可用
编译compile:Java 源程序编译成 *.class 字节码文件
测试test:运行提前准备好的测试程序
打包package: Java工程:jar包 Web工程:war包
校验verify:检查包是否有效
安装install:把一个 Maven 工程经过打包操作生成的 jar 包或 war 包存入 Maven 仓库
部署deploy: 部署 jar 包:把一个 jar 包部署到 Nexus 私服服务器上 部署 war 包:借助相关 Maven 插件(例如 cargo),将 war 包部署到 Tomcat 服务器上

2.依赖

如果 A 工程里面用到了 B 工程的类、接口、配置文件等等这样的资源,那么我们就可以说 A 依赖 B。

依赖管理中要解决的具体问题:

jar 包的下载:使用 Maven 之后,jar 包会从规范的远程仓库下载到本地
jar 包之间的依赖:通过依赖的传递性自动完成
jar 包之间的冲突:通过对依赖的配置进行调整,让某些jar包不会被导入

3.package、install、deploy的区别

-Dmaven.test.skip=true 代表不执行测试用例,也不编译测试用例类
打包命令mvn

**mvn clean package** 依次执行了clean、resources、compile、testResources、testCompile、test、jar等7个阶段
package命令完成了项目编译、单元测试、打包功能,但没有把打包的可执行(jar包、war包等形式的包)部署到本地maven仓库和远程maven私服仓库。

**mvn clean install**  依次执行了clean、resources、compile、testResources、testCompile、test、jar、install等8个阶段
install命令则把打好的包部署到了本地maven仓库,没有部署到远程maven私服仓库。

**mvn clean deploy** 依次执行了clean、resources、compile、testResources、testCompile、test、jar、install、deploy等9个阶段
deploy命令把打好的包同时部署到本地maven仓库和远程maven私服仓库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值