Maven——声明周期与插件

Clean生命周期:

- pre-clean  执行一些需要在clean之前完成的工作

- clean  移除所有上一次构建生成的文件   maven-clean-plugin:clean

- post-clean  执行一些需要在clean之后立刻完成的工作

Default生命周期

- validate  验证项目是正确的,并且有必要的信息都是可获得的

- generate-sources

- process-sources   

- generate-resources

- process-resources     复制并处理资源文件,至目标目录,准备打包。

- compile     编译项目的源代码。  mvane-compiler-plugin:compile

- process-classes

- generate-test-sources

- process-test-sources

- generate-test-resources  maven-resource-plugin:resources

- process-test-resources     复制并处理资源文件,至目标测试目录。

- test-compile     编译测试源代码。 maven-compiler-plug:testCompile

- process-test-classes    maven-resources-plugin:testResources

- test     使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。  maven-surefire-plugin:test

- prepare-package

- package     接受编译好的代码,打包成可发布的格式,如 JAR 。 maven-jar-plugin:jar

- pre-integration-test

- integration-test  如果有必要,将发布包处理和部署到一个可以运行集成测试的环境中。

- post-integration-test

- verify   运行各种检查来证实该发布是有效的并符合质量标注的。

- install     将包安装至本地仓库,以让其它项目依赖。 maven-install-plugin:install

- deploy     将最终的包复制到远程的仓库,以让其它开发人员与项目共享。 maven-deploy-plugin:deploy

Site生命周期

- pre-site     执行一些需要在生成站点文档之前完成的工作

- site    生成项目的站点文档  maven-site-plugin:site

- post-site     执行一些需要在生成站点文档之后完成的工作,并且为部署做准备

- site-deploy     将生成的站点文档部署到特定的服务器上  maven-site-plugin:deploy

mvn clean 执行clean生命周期的pre-clean、clean 阶段

mvn test 执行default生命周期 valid到test阶段

mvn clean install 先执行clean 生命周期,再执行default周期到install

mvn clean deploy site-deploy 执行clean、default、deploy所有阶段

跳过测试阶段

-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类

-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下

动态执行测试用例 mvn test -Dtest=测试类名(可以使用通配符)

http://healthandbeauty.iteye.com/blog/1618501  -U -e -B      

插件

%本地仓库%\org\apache\maven\plugins,可以看到一些下载好的插件

Maven——声明周期与插件_第1张图片

Mvn clean:clean 执行指定插件的插件目标(goal)

插件绑定分为内置绑定和自定义绑定。

内置绑定 生命周期与插件目标的关系

Clean生命周期

Default生命周期

Maven——声明周期与插件_第2张图片

Site声明周期

自定义绑定

   

       

            org.apache.maven.plugins

            maven-source-plugin

            2.2.1

           

               

                    attach-source

                    package

                   

                        jar-no-fork

                   

               

           

       

   

    ……

 插件仓库

跟其他构件一样,插件也是根据坐标存储在Maven仓库中。超级POM中Maven配置的默认插件远程仓库如下:

   

      central

      Central Repository

      http://repo.maven.apache.org/maven2

      default

     

        false

     

     

        never

     

   

从命令行调用插件

例如:mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:tree

解析插件前缀

支持使用前缀调用插件

你可能感兴趣的:(Maven,maven)