maven总结

1. 概念
一个基于约定规则,具有依赖管理,可以运行生命周期中指定插件目标的项目管理工具。
Maven项目的坐标: groupId, artifactId, version 和 packaging

2. 依赖管理
pom.xml指定depends信息,构建项目时自动从远程仓库下载依赖到本地库


3. 插件
help:常用mvn help:describe -Dplugin=groupid -Dmojo=goal -Dfull
archetype: 常用archetype:generate创建各种类型应用
eclipse:eclipse

4. 生命周期
   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     将最终的包复制到远程的仓库,以让其它开发人员与项目共享。

每个插件目标都需要绑定到特定的阶段执行,常见的:
resources:resources  
Resources插件的 resources 目标绑定到了 resources  阶段。这个目标复制 src/main/resources 下的所有资源和其它任何配置的资源目录,到输出目录。  

compiler:compile  
Compiler 插件的 compile 目标绑定到了 compile  阶段。这个目标编译src/main/java 下的所有源代码和其他任何配置的资源目录,到输出目录。  

resources:testResources  
Resources 插件的 testResources 目标绑定到了 test-resources  阶段。这个目标复制 src/test/resources 下的所有资源和其它任何的配置的测试资源目录,到测试输出目录。  

compiler:testCompile  
Compiler 插件的 testCompile 目标绑定到了 test-compile  阶段。这个目标编译 src/test/java 下的测试用例和其它任何的配置的测试资源目录,到测试输出目录。  

surefire:test  
Surefire插件的 test 目标绑定到了 test  阶段。这个目标运行所有的测试并且创建那些捕捉详细测试结果的输出文件。默认情况下,如果有测试失败,这个目标会终止。  

jar:jar  
Jar 插件的jar 目标绑定到了 package  阶段。这个目标把输出目录打包成
JAR文件。  

你可能感兴趣的:(maven)