maven 各种命令和作用

一、Maven常用命令及其作用

Maven的生命周期包括:clean、validate、compile、test、package、verify、install、site、deploy,其中需要注意的是:执行后面的命令时,前面的命令自动得到执行,(其中,也可以跳过其中的步骤,如:test,在mvn install或mvn package后加上-Dmaven.test.skip=true或-DskipTests即可)。

生命周期 描述
1.clean 清理删除target目录下编译的内容。遇到问题多清理
2.validate 验证。验证项目是否正确。
3.compile 编译项目源代码。执行编译,源代码编译在此阶段完成。
4.test 对项目进行运行测试。使用适当的单元测试框架(例如JUnit)运行测试。
5.package 打包。打成jar或war包,其中会自动进行clean+compile。
6.verify 检查。对集成测试的结果进行检查,以保证质量达标。
7.install 安装。将本地工程jar包上传安装到本地仓库,以供其他项目使用。
8.site 站点。进行站点部署。
9.deploy 部署。拷贝最终的工程包到远程仓库或私服中,以共享给其他开发人员和工程。

二、常用命令使用场景举例
1、mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段

package命令完成了项目编译、单元测试、打包功能,但没有把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库

2、mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段

install命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库,但没有布署到远程maven私服仓库

3、mvn clean deploy依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9个阶段

deploy命令完成了项目编译、单元测试、打包功能,同时把打好的可执行jar包(war包或其它形式的包)布署到本地maven仓库和远程maven私服仓库

三、常见问题
(一)mvn clean install 和 mvn install 的区别
1、根据maven在执行一个生命周期命令时,理论上讲,不做mvn install 得到的jar包应该是最新的,除非使用其他方式修改jar包的内容,但没有修改源代码

2、平时可以使用mvn install ,不使用clean会节省时间,但是最保险的方式还是mvn clean install,这样可以生成最新的jar包或者其他包

(二)maven两种跳过单元测试方法的区别
1、 mvn package -Dmaven.test.skip=true

不但跳过了单元测试的运行,同时也跳过了测试代码的编译

2、 mvn package -DskipTests

跳过单元测试,但是会继续编译。如果没时间修改单元测试的bug,或者单元测试编译错误,则使用第一种,不要使用第二种
-----------------------------------
©著作权归作者所有:来自51CTO博客作者qq60f94701a5ca9的原创作品,请联系作者获取转载授权,否则将追究法律责任
Maven常用命令及其作用
https://blog.51cto.com/u_15310950/6508227

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值