1. clean

 清理命令,执行clean会删除target目录及内容。

2. compile

 编译命令,作用是将src/main/java 下的文件编译为class文件输出到 target目录下。

  

maven target什么命令打包到项目目录下 maven项目中的target_java

  查看target目录,class文件已生成,编译完成。

  

maven target什么命令打包到项目目录下 maven项目中的target_jar包_02

  

maven target什么命令打包到项目目录下 maven项目中的target_生命周期_03

 3. test

 测试命令,会执行 src/test/java 下的单元测试类。下图为测试结果,运行1个测试用例,全部成功。

  

maven target什么命令打包到项目目录下 maven项目中的target_jar包_04

  查看target目录,class文件已生成,编译完成。不仅会编译src/test/java下的代码还会编译src/main/java下的代码。

  

maven target什么命令打包到项目目录下 maven项目中的target_生命周期_05

 

   

maven target什么命令打包到项目目录下 maven项目中的target_生命周期_06

4. package

 打包命令,会对src/main/java、src/test/java下的代码进行编译,生成target目录并且打完包放在target目录下。

 pom.xml可以指定打成jar包还是war包,一般对Java工程打成jar包,对web工程打成war包。

5. install

 安装命令,会对src/main/java、src/test/java下的代码进行编译,生成target目录,打完包放在target目录下,并且将war包发布到本地仓库。

  

maven target什么命令打包到项目目录下 maven项目中的target_java_07

 

从以上5个命令的运行结果可以看出:当后面的命令执行时,前面的操作过程也都会自动执行。

 6. 生命周期

 maven对项目构建过程分为三套相互独立的生命周期:

  1、清理生命周期:clean命令,在进行真正的构建之前进行一些清理工作(清除项目编译信息)。

默认生命周期:构建的核心部分,编译、测试、打包、安装、部署。

  3、站点生命周期:生成项目报告,站点,发布站点。

7. 概念模型

 

maven target什么命令打包到项目目录下 maven项目中的target_生命周期_08

    1、项目对象模型:指的是pom.xml文件,通过pom.xml文件定义项目的坐标、项目依赖、项目信息、插件目标(项目运行环境信息)等。

  2、依赖管理模型:指项目对象模型中的项目依赖jar包,通过maven的依赖管理对项目所依赖的jar包进行统一管理。

<!-- 依赖关系 --> 
   <dependencies> 
     <!-- 此项目运行使用 junit,所以此项目依赖 junit --> 
     <dependency> 
       <!-- junit 的项目名称-公司组织的名称 --> 
       <groupId>junit</groupId> 
       <!-- junit 的模块名称-项目名 --> 
       <artifactId>junit</artifactId> 
       <!-- junit 版本-版本号 --> 
       <version>4.9</version> 
       <!-- 依赖范围:单元测试时使用 junit --> 
       <scope>test</scope> 
     </dependency>
 <dependencies>

    从3个仓库查找下载jar包:本地仓库,远程仓库,中央仓库。

  3、构建生命周期:项目构建包括清理、编译、测试、报告、打包、部署,maven将这些过程规范为一个生命周期。每一个构建项目的命令都对应了maven底层一个插件。