项目构建工具Maven
Maven是什么
Apache Maven是一个项目管理和构建的工具,基于项目对象模型(Project Object Model, POM),通过一系列插件和定义的一系列标准集合,管理工程项目的生命周期和不同阶段, 以及项目间的依赖关系, 聚合关系。
其主要功能是: 项目构建;项目构建;项目依赖管理;软件项目持续集成;版本管理;项目的站点描述信息管理。
为什么需要Maven
对项目构建,开发以及项目发布的不同阶段,以及项目中依赖的jar包进行有效的管理。
Maven的安装及配置
下载Maven : https://maven.apache.org/download.cgi
将压缩文件解压到你准备安装的目录, 如: D:\Creditease\apache-maven-3.3.9
在系统的环境变量中新建一个变量MAVEN_PATH, 其值为:D:\Creditease\apache-maven-3.3.9
在系统变量path中加入 : %MAVEN_PATH%\bin
在console中输入echo %MAVEN_PATH% 以及mvn -v 来查看maven的安装目录及查看maven的版本
可以通过\apache-maven-3.3.9\conf\settings.xml对Maven进行设置
Maven生命周期和阶段
maven内置了三个生命周期,每个生命周期和阶段如下:
default:构建(Build)
validate:验证项目是否正确,所有必需的信息是否可用。
compile:编译项目中的代码。
test:用相关的单元测试框架测试编译后的代码,这些运行的测试并不会随项目打包和布署。
package:将编译后的代码打包成相应的格式文件,如jar包。
integration-test: 如果需要在一个综合环境中运行我们的测试,这个阶段将会运行和布署项目到该环境中。
verify: 检查项目的包是否正确和符合要求。
install:将包安装到本地maven仓库,可以让其他项目作为依赖使用该包。
deploy:将包发布到远程的maven仓库,并提供给其他开发者使用。
clean:清理
pre-clean 准备清理
clean 执行清理工作
post-clean 执行清理后的后续工作
site:生成项目文档和站点
pre-site 准备生成
site 生成项目站点和文档
post-site 执行生成文档后的后续工作
site-deploy 发布项目文档
Maven主要命令
mvn archetype:generate 创建maven项目
mvn clean :清空输出目录(即 target 目录)
mvn compile:编译源代码
mvn package:生成构件包(一般为 jar 包或 war 包)
mvn tomcat7:run-war 使用 tomcat7-maven-plugin 插件将应用部署到 Tomcat中
mvn install:将构件包安装到本地仓库
mvn deploy:将构件包部署到远程仓库
Maven项目的依赖,聚合