转载

maven构建java项目工具介绍

一、maven用途

  1. java在创建项目的时候,可以自己手动创建,也可以利用工具创建,也就是maven来创建。
  2. maven可以用来创建项目、部署项目、安装管理依赖、编译代码、管理二进制等。
  3. maven的目的是使项目过程规范化、自动化、高效化及强大的可扩展性。
  4. 利用maven自身和插件获得代码检查报告、单元测试覆盖率、实现持续集成
  5. maven最主要的用途是依赖管理,如果不使用maven,项目若需要某个jar包就需要手动下载,而maven则只要在pom配置文件手动加depency配置就能自动下载需要的依赖的jar包
  6. 实际上,maven一些命令执行的类似编译代码打包代码,都是执行的java命令,所以,maven就是在执行一系列java命令来完成项目的各种用途

二、maven核心概念

  1. pom

    (1)maven配置项目中最基础的配置文件,在项目根目录下,一般为pom.xml
    (2)主要是对项目相关信息的一些配置,最常见的就是依赖的引入配置
  2. artifacts

    (1)项目将会生成的一些包或者二进制等文件
    (2)Artifacts指的就是项目的项目发行时产生的一些文件
  3. repositories

    (1)存储artifact工具的仓库或者包的仓库,分为本地和远程仓库
  4. build lifecycle

    (1)每个任务task执行有一个顺序的链条phase,比如mvn install任务执行之前会先执行其他的phase(具体的顺序的phase链条可以自行搜索)
    (2)几个重要的顺序的phase链条:
           validate 验证项目是否正确以及必须的信息是否可用
           compile 编译源代码
           test 测试编译后的代码,即执行单元测试代码
           package 打包编译后的代码,在target目录下生成package文件
           integration-test 处理package以便需要时可以部署到集成测试环境
           verify 检验package是否有效并且达到质量标准
           install 安装package到本地仓库,方便本地其它项目使用
           deploy 部署,拷贝最终的package到远程仓库和替他开发这或项目共享,在集成或发布环境完成
  5. goal

    (1)代表某一个具体的task,比如mvn install
    (2)执行某个goal时候,必须按照顺序执行前边的phase才行,比如mvn install执行的时候,先执行validate/compile/test/package/integration-test/verify这些phase后,再执行install,这是build lifecycle规则

三、maven配置

原文  https://segmentfault.com/a/1190000019198675
正文到此结束
Loading...