Maven 作用生命周期
Clean生命周期(Clean Lifecycle)Default 生命周期(Default Lifecycle)Site生命周期(Site Lifecycle) 配置详解
修改本地仓库路径修改maven中默认的JDK版本添加镜像源 项目构建
mvn cleanmvn validatemvn compilemvn test 依赖管理
Maven 作用 Maven是Apache旗下的一个纯java开发的开源项目,他是一个项目管理工具。可以帮助我们构建项目和进行jar包的依赖管理。大大方便了我们对项目的管理。
Maven的安装和环境变量配置请移驾。
Maven有三个相互独立的生命周期,Maven某个命令执行,这个命令所在的生命周期,在这个命令之前的命令都会执行。,这种逻辑是合理的,也极大的简化命令的输入。
- Clean生命周期(Clean Lifecycle):负责项目的清理工作Default 生命周期(Default Lifecycle):负责项目的部署Site生命周期(Site Lifecycle):负责创建项目的文档站点
- pre-clean:执行在清理前需要完成的准备工作。clean:清理上一次构建生成的文件(target文件夹)。post-clean:执行一些需要在clean之后,需要执行的操作。
mvn clean 其实就是第二个步骤,因为执行mvn clean会执行Clean生命周期中,在mvn clean之前的步骤,所以,实际上执行了pre-clean和clean, 所以mvn clean 相当于mvn pre-clean clean。
Default 生命周期(Default Lifecycle)Default生命周期是Maven极其重要的一个生命周期,因为绝大部分Maven工作都包含在这个生命周期里。
| 名称 | 说明 |
|---|---|
| validate | 验证工程是否正确,所有需要的资源是否可用 |
| initialize | 包含构建前的初始化操作,比如初始化参数、创建必要的目录等 |
| generate-sources | 生成在编译过程中所需要的代码 |
| process-sources | 处理项目主资源文件,比如过滤值 |
| generate-resources | 生成主要的资源文件 |
| process-resources | 将生成的资源文件复制到 classpath 的对应包中 |
| compile | 编译项目的源代码 |
| process-classes | 产生编译过程中生成的文件 |
| generate-test-sources | 产生编译过程中测试相关的代码 |
| process-test-sources | 处理测试代码 |
| generate-test-resources | 生成主要的测试资源文件 |
| process-test-resources | 将生成主要的测试的资源文件复制到 classpath 中 |
| test-compile | 编译测试代码 |
| process-test-classes | 产生编译测试代码过程的文件 |
| test | 使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。 |
| prepare-package | 处理打包前需要初始化的准备工作 |
| package | 将编译好的代码打包成可发布的格式,如 JAR 等 |
| pre-integration-test | 做好集成测试前的准备工作,比如集成环境的参数设置 |
| integration-test | 集成测试 |
| post-integration-test | 完成集成测试后的收尾工作,比如清理集成环境的值 |
| verify | 检测测试后的包是否完好 |
| install | 将包安装至本地仓库,以让其它项目依赖 |
| deploy | 运行集成和发布环境,将测试后的最终包以构件的方式发布到远程仓库中 |
这边说几个常用的 。
- process-resources:处理项目主资源文件,比如过滤值,为打包做准备。compile:编译项目的源代码。test-compile:编译测试源代码。test:使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。package:接受编译好的代码,打包成可发布的格式,如 JAR 。install:将包安装至本地仓库,以让其它项目依赖。deploy:运行集成和发布环境,将测试后的最终包以构件的方式发布到远程仓库中。
- pre-site:执行一些需要在生成site文档之前的工作。site:生成项目的site文档。post-site:执行一些需要在生成site文档之后完成的工作,并且为部署做准备。site-deploy:将生成的site文档部署到特定的服务器上。
该生命周期特别实用,能够自动生成文档和统计数据。
配置详解 修改本地仓库路径1.maven是通过标签管理本地仓库路径的,只需要修改这个标签即可。如果不修改,默认本地仓库位置是${user.home}/.m2/repository 。
修改maven中默认的JDK版本E:/Environment/LocalRepository
maven是通过标签管理Jdk版本的。
这边maven.compiler.source和maven.compiler.target只是建议,并不是强制使用,比如在maven这里配置了1.8,但是在开发工具使用的是1.7,最终编译还是会使用1.7。
JDK-1.8 true 1.8 1.8 1.8 1.8
其中,maven.compiler.source标识使用的jdk标准。maven.compiler.target标识了编译版本。
添加镜像源maven通过mirror标签管理镜像,因为默认通过国外的源下载jar包,下载速度会比较低,所以一般改为国内的源。这里把他改成阿里云。
项目构建alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central maven-default-http-blocker external:http:* Pseudo repository to mirror external repositories initially using HTTP. http://0.0.0.0/ true
在引入Maven后,就可以将 项目从编译-----测试------打包-----安装-----部署 整个过程 都交给Maven 管理。
mvn clean:主要是清理项目,它主要是清理mvn compile生成的target文件夹以及文件夹下的文件。
mvn validate:验证工程是否正确,所有需要的资源是否可用。
mvn compile:编译项目,将编译后的.class文件放到target目录。
mvn compile:编译项目,将编译后的.class文件放到target目录。
依赖管理


