maven教程之四生命周期和插件

 

 


1.生命周期

 

三个生命周期
1、clean
   pre-clean  执行一些需要在clean之前完成的工作
   clean  移除所有上一次构建生成的文件
   post-clean  执行一些需要在clean之后立刻完成的工作
2、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
  post-integration-test
  verify
  install     将包安装至本地仓库,以让其它项目依赖。
  deploy     将最终的包复制到远程的仓库,以让其它开发人员与项目共享。
3、site
  pre-site     执行一些需要在生成站点文档之前完成的工作
  site    生成项目的站点文档
  post-site     执行一些需要在生成站点文档之后完成的工作,并且为部署做准备
  site-deploy     将生成的站点文档部署到特定的服务器上

执行的过程

生命周期是插件来完成的

 

2.apache的网站可以看插件

 

插件是maven的核心,所有执行的操作都是基于插件来完成的
为了让一个插件中可以实现众多的类似功能,maven为插件设定了目标,一个插件中有可能有多个目标
其实生命周期中的重要的每个阶段都是由插件的一个具体目标来执行的

 

maven.apache.org
Plugins 所有插件
点开插件Goals是目标
其实生命周期中的重要的每个阶段都是由插件的一个具体目标来执行的

 

3.配置插件

 

在pom中的<build></build>中配置
要使用插件要首先把插件配置好
先加上插件然后执行插件目标
可以用mvn来调用插件((例子source:jar-no-fork)这种方式不好)
也可以绑定生命周期的阶段来调用插件(这种方式好)
可以给插件加依赖
parent中的pom的配置
<build>
   <pluginManagement>
    <plugins>
     <plugin>
      <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
             <version>2.1.2</version>
             <executions>
              <execution>
               <phase>package</phase>
               <goals><goal>jar-no-fork</goal></goals>
              </execution>
             </executions>
     </plugin>
     
     <plugin>
      <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-rar-plugin</artifactId>
          <version>2.2</version>
          <executions>
           <execution>
            <phase>package</phase>
            <goals><goal>rar</goal></goals>
           </execution>
          </executions>
     </plugin>
     
     <plugin>
      <groupId>org.codehaus.mojo</groupId>
          <artifactId>sql-maven-plugin</artifactId>
          <version>1.5</version>
          <dependencies>
           <dependency>
            <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.18</version>
           </dependency>
          </dependencies>
          <configuration>
             <driver>${mysql.driver}</driver>
             <url>${mysql.url}</url>
             <username>${mysql.username}</username>
             <password>${mysql.password}</password>
             <sqlCommand>
              create database IF NOT EXISTS maven_test
             </sqlCommand>
          </configuration>
          
          <executions>
           <execution>
            <phase>package</phase>
            <goals>
             <goal>execute</goal>
            </goals>
           </execution>
          </executions>
     </plugin>
    </plugins>
   </pluginManagement>
 </build>


 
4.help插件的使用

 

# mvn help:describe -Dplugin=org.somewhere(G):some-plugin(A):0.0.0(V)
# mvn help:describe -Dplugin=(前缀 例如complie,前缀是方便的使用插件)
看以查看这个插件的前缀,目标等等信息

 

5.配置插件步骤

 

配置gav
配置绑定executions
配置参数configuration
还可以加依赖

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值