Maven的生命周期三个 clean、compile、site 设置站点,其中这三个生命周期是独立的
Clean的生命周期:
1pre-clean执行一些需要在clean之前完成的工作
2clean移除上一次构建生成的所有文件
3post-clean执行一些需要在clean之后立刻完成的工作
Maven的生命周期三个 clean、compile、site 设置站点,其中这三个生命周期是独立的
Clean的生命周期:
1pre-clean执行一些需要在clean之前完成的工作
2clean移除上一次构建生成的所有文件
3post-clean执行一些需要在clean之后立刻完成的工作
Target目录是项目make、complie一些动作后生成的项目运行需要的文件,比如war包、比如Java代码.class文件 还有项目里面其它配置文件,总之,就是项目编译过后生成的一系列文件。Clean的动作就是删除target这个目录,为接下来的重新编译做准备;
compile的生命周期:
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
verify
install将包安装至本地仓库、以让其他目标进行依赖
deploy将最终的包复制到远程仓库、以让其它开发人员与项目共享
在target下面生成classes、generated-sources目录,并产生项目中java编译的class文件、框架相关的配置文件,比如我这里的spring mybatis的配置文件;
Test
运行项目中test模块下的测试,如果项目中测试写的不够完善或者没写完整,可以把这里的东西都清理掉,否则影响后面的package等步骤
Package
编译的文件和web相关的页面、样式、js等前端打成war包,如果生成war包,便可以直接放入到tomcat下面的webapps中运行(运行时得保证数据库连接等环境正常);
Install
将war(或者jar,看你maven项目的具体类型)打包到本地仓库,供其它项目作为依赖使用;
Deploy
将项目发布到maven仓库,这里就需要nexus私服了,因为我们平时使用的是apache的maven仓库,别人明显是不会让你随意发布应用的,所以我们需要自己搭建仓库并做相关配置才能发布应用。发布的应用可以在nexus私服的仓库搜索到;
-
顶