Maven整合ANT

        前言:Ant是面向过程的构建工具,而Maven封装了构建的细节。这样的就使得Ant更加灵活,可是由于和过多的细节绑定,则可复用性什么都比较差、而且使用复杂。而Maven由于封装了细节,则可复用性较好,使用配置都相对简单,但是同时失去了灵活性。

        有的时候,我们有这种需求,使用Maven打包,可以要把这个打好的war包传输到远端的某台服务器上,或者是在构建过程中要做某些操作,而这个操作不方便用Maven处理。那怎么办?Maven的Ant插件就应用而生了。我们得感谢Maven强大的插件机制。以下就是简单步骤:

         第一步:在工程POM文件中配置:

     <!-- ant插件 -->
    <plugin>
      <artifactId>maven-antrun-plugin</artifactId> 
      <version>1.7</version>
      <executions>  
        <execution>
        <id>package</id>
        <phase>package</phase>
        <goals>
         <goal>run</goal>
        </goals>
         <configuration>
           <tasks>
             <ant antfile="build.xml" target="run"></ant>
           </tasks>
         </configuration>
       </execution>
      </executions>
    </plugin>

        在以上的<tasks>标签里,也可以写ANT命令,不过为了不让Maven的POM中加入过多的ANT命令,这里单独把ANT放在文件里。要注意

        1)<phase>标签里的值必须和Maven的构建项目的生命周期相对应,比如这里的ANT命令就会在Maven打好包以后执行。也就是告诉Maven什么时候调用ANT命令。

        2)这里的<goal>的是run(这个我还没深入研究)。

        3)<ant>标签的antfile属性是ANT配置文件的路径,这里是相对路径。target属性是配置文件中要执行的target名称。

         第二步:在POM.XML同级目录建立build.xml文件,并写自己的ANT命令。如:

        <?xml version="1.0" encoding="UTF-8"?>
        <project name="demo">
            <target name="run">
              <echo message="执行"></echo>
            </target>
        </project>

         第三步:执行Maven的打包命令,这里不说了,可以自己上网查,或者是在Eclipse中右单击该文件,执行:“Maven package”命令。然后就可以看见Console里打印出“执行”这个信息。

         在这里,只是初步对Maven的ANT插件的整合,其中也可以在ANT的配置文件中引用Maven属性等,以及其他的ANT命令,有些命令是和Maven的构建生命周期绑定的,对这方面有需要的可以研究下以下这篇文章:官方关于该插件的文章,欢迎各位拍砖、交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值