1、生命周期(项目构建的步骤集合)
生命周期是由多个阶段(phase)组成,每个阶段都是一个完整的功能,比如mvn clean中的clean就是一个阶段
(1.1)Clean生命周期
pre-clean
clean:移除所有上一次构建生成的文件
post-clean
mvn clean命令等同于上面3个阶段的和。
(1.2)Default生命周期
在maven中,只要在同一个生命周期,你执行后面的阶段,那么前面的阶段也会被执行,而且不需要额外去输入前面的阶段,这样大大减轻了程序员的工作。
validate
generate-sources
process-sources
generate-resources
process-resources 复制并处理资源文件,至目标目录,准备打包。
compile 编译项目的源代码。
process-classes
generate-test-sources
process-test-sources
generate-test-resources
process-test-resources 复制并处理资源文件,至目标测试目录。
test-compile 编译测试源代码。
process-test-classes
test 使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。
prepare-package
package 接受编译好的代码,打包成可发布的格式,如 JAR 。
pre-integration-test
integration-test
post-integration-test
verify
install 将包安装至本地仓库,以让其它项目依赖。
deploy 将最终的包复制到远程的仓库,以让其它开发人员与项目共享。
(1.3)Site生命周期(一般不用)
2、插件(plugin)
每个插件都能实现一个阶段的功能,maven的生命周期相当于指定了maven命令执行的顺序,而没有实现该功能,插件就是用来实现这些功能的。
(2.1)maven的compile编译插件(未配置,就是默认配置)注意:修改完后,要右键工程,maven--update project
可以到pom.xml中指定编译插件(配置编译插件)
(2.2)maven的tomcat插件(若使用该插件,则本地不需安装tomcat)
默认输入tomcat:run去使用tomcat插件启动web工程,默认下版本是tomcat6
一般需要配置成tomcat7,pom.xml中设置如下:
3、继承(pom文件的继承)
创建父工程MavenParent和子工程MavenSub
在父工程中对jar包进行依赖,在子工程中都会继承此依赖。
4、dependencyManagemen标签
该标签放在父工程的pom文件中,起到的作用就是不会让子工程直接去继承父工程的依赖,需要在子工程中去指定需要依赖的文件。