Maven作为流行的项目管理工具,包含了项目对象模型,依赖管理系统,项目生命周期和定义插件目标的逻辑。简化项目开发,并且标准化项目建设。
Maven的三种生命周期:
- clean
- default(build)
- site
clean生命周期有3个阶段:
1.pre-clean
2.clean (移除上次构建生成的文件)
3.post-clean
注意:运行某个阶段,它之前所有阶段都会执行一次
例:”mvn clean”实际上相当于”mvn pre-clean clean”
default生命周期有22个阶段:
1.validate
2.initialize
3.generate-sources
4.process-sources
5.generate-resource(生成资源文件)
6.process-resources(复制资源文件到指定目录)
7.compile(编译项目代码)
8.process-classes
9.generate-test-sources(生成测试代码)
10.process-test-sources
11.generate-test-resources(生成测试相关资源文件)
12.process-test-resources(复制测试相关资源文件到测试目录)
13.test-compile(编译测试代码)
14.test(运行单元测试)
15.prepare-package
16.package(打包编译后的代码成指定格式)
17.pre-integration-test
18.integration-test(集成测试)
19.post-integration-test
20.verify(检查验证)
21.install(把包放到本地仓库,供其它项目依赖使用)
22.depoly(把包放到远程仓库)
site生命周期有4个阶段:
1.pre-site
2.site(生成项目站点文档)
3.post-site
4.site-deploy(将站点文档放到指定服务器)
插件包括核心插件和第三方插件。
Maven自带 Build plugins和Reporting plugins
- 核心插件:
maven-deploy-plugin 发布插件
maven-jar-plugin 打包插件
maven-compiler-plugin 编译插件
maven-install-plugin 安装插件
maven-surefire-plugin 单元测试插件
maven-source-plugin 源码插件
- 第三方插件
mybatis-generator-maven-plugin mybatis插件
jetty-maven-plugin jetty插件
maven-assembly-plugin 相关jar包和工程打成一个jar
….
Maven命令
mvn clean 清理
mvn package 打包
mvn install 放入本地仓库
mvn deploy 放入远程仓库
mvn site 生成项目信息网站
mvn archetype:generate 生成maven的Java项目
mvn tomcat:run 用tomcat运行
mvn jetty:run 用jetty运行
Maven仓库管理器是Nexus
(1)Maven远程仓库地址
默认中央仓库:http://repo1.maven.org/maven2/
常用仓库地址:http://mvnrepository.com/
阿里仓库地址:http://maven.aliyun.com/nexus/content/groups/public
wso2:http://maven.wso2.org/nexus/content/groups/public/
jboss:http://repository.jboss.com/maven2/
apache:http://repo.maven.apache.org/maven2/
spring:http://repo.spring.io/release/
(2)本地仓库
setting.xml中
<settings>
<localRepository>D:\maven_new_repository</localRepository>
</settings>