mvn install命令执行过程
- resources:对主程序的资源进行处理
- compile:对主程序进行编译
- testResources:对测试资源进行处理
- testComoile:对测试程序进行编译
- test:执行测试,打印测试结果
- jar:的一个jar包,存放在target目录中
- install:执行安装
生命周期
1.作用
为了让构建过程自动化完成,Maven设定了三个生命周期,生命周期中的每一个环节对应构建过程中的一个操作。
2.三个生命周期
clean生命周期:作用:清理相关操作、各个环节包括(pre-clean、clean、post-clean)
Site生命周期:作用:生成站点相关、各个环节(pre-site、site、post-site、deploy-site)
Default生命周期(最重要):作用:主要构建过程、各个环节:
- validate
- generate-sources
- process-resources
- generate-resources
- process-resources复制并处理资源文件,至目标目录,准备打包。
- compile编译项目的源代码
- process-classes
- generate-test-sources
- process-test-resources复制并处理资源文件,至目标测试目录。
- test-compile编译测试源代码
- process-test-classes
- test使用合适的单元测试框架运行测试,这些测试代码不会被打包或部署
- prepare-package
- package接受编译好的代码,打包或者可发布的格式,如jar
- pre-integration-test
- integration-test
- post-integration-test
- verify
- install将包安装至本地仓库,以让其他项目依赖
- deploy将最终的包复制到远程的仓库,以让其他开发人员与项目共享或部署到服务器上运行。
3.特点
1.前面三个生命周期彼此是独立的
2.在任何一个生命周期内部,执行任何一个具体环节的操作,都是从本周起最初的位置开始执行,直到指定的地方(最重要)
Maven之所以这么设计其实就是为了提高构建过程的自动化程度,让使用者只关心最终要干的即可。过程中的各个环节是自动执行的。
而maven中的各个命令,其实是各个插件负责完成,maven核心程序仅仅负责宏观调控。