前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Maven生命周期和命令格式

Maven生命周期和命令格式

作者头像
SuperHeroes
发布2019-03-12 14:56:00
6490
发布2019-03-12 14:56:00
举报
文章被收录于专栏:云霄雨霁

1  Maven的生命周期

Maven的生命周期就是对所有的构建过程进行抽象和统一。包含了项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成等几乎所有的构建步骤。Maven生命周期不做任何实际的工作,实际任务由插件完成。

Maven有三套相互独立的生命周期,分别是clean、default和site。每个生命周期包含一些阶段(phase),阶段是有顺序的,后面的阶段依赖于前面的阶段。

1.1  clean生命周期

清理项目,包含三个phase:

  1. pre-clean:执行清理前需要完成的工作
  2. clean:清理上一次构建生成的文件
  3. post-clean:执行清理后需要完成的工作

如果想执行clean,必须先执行pre-clean。但我们只需要告诉maven我们想执行clean即可,maven会自动执行前面的所有阶段:mvn clean

1.2  default生命周期

构建项目,重要的phase如下:

  1. validate:验证工程是否正确,所有需要的资源是否可用。
  2. compile:编译项目的源代码。  
  3. test:使用合适的单元测试框架来测试已编译的源代码。这些测试不需要已打包和布署。
  4. Package:把已编译的代码打包成可发布的格式,比如jar。
  5. integration-test:如有需要,将包处理和发布到一个能够进行集成测试的环境。
  6. verify:运行所有检查,验证包是否有效且达到质量标准。
  7. install:把包安装到maven本地仓库,可以被其他工程作为依赖来使用。
  8. Deploy:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。

default生命周期一共有23个阶段,这里只是列出了几个比较重要的阶段。如果我们想要执行Package,那么maven会把default生命周期中package之前的阶段都执行,但不会执行clean声明周期。所以一般需要这样写maven命令:mvn clean package.

1.3  site生命周期

建立和发布项目站点,phase如下:

  1. pre-site:生成项目站点之前需要完成的工作
  2. site:生成项目站点文档
  3. post-site:生成项目站点之后需要完成的工作
  4. site-deploy:将项目站点发布到服务器

2  Maven命令格式

命令行配置插件参数   -Dxxx是java设置参数的方式

代码语言:javascript
复制
  mvn test -Dmaven.test.skip=true

通过对maven生命周期的了解,压根就不需要记住所谓的maven常用命令。 用 “mvn 阶段名” 大体上能够满足编译,测试的要求。比如:

  • mvn clean compile  编译
  •  mvn clean test 测试
  •  mvn clean package 打包
  •  mvn clean install 把生成的jar/war包复制到本地repository
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/08/26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1  Maven的生命周期
    • 1.1  clean生命周期
      • 1.2  default生命周期
        • 1.3  site生命周期
        • 2  Maven命令格式
        相关产品与服务
        云服务器
        云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档