Maven实战之antrun插件
2015-09-17 22:37
309 查看
在Maven实际使用过程中,有时候在对一些旧有的项目的做从Makefile和ant到Maven迁移时需要对一些步骤做特殊处理,比如说编译JNI代码,虽然Maven有个native插件可以用,但需要将原有项目JNI的编译步骤重写,这在有些时候显然不太适合,比如时间压力比较大的情况下。其实这种情况可以使用Maven的antrun插件来做,这样做的好处就是可以重用原来写好的Makefile,相对来说还是比较简单也是最快的。具体信息可以参考http://maven.apache.org/plugins/maven-antrun-plugin/。Maven的antrun用起来也是非常简单的,就是在代码里嵌入类似以下代码片段:
转自:http://blog.csdn.net/kongxx/article/details/6998965
... <build> <plugins> <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <id>package</id> <phase>package</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <echo message="make ..."/> <exec dir="src/main/c" executable="make" failonerror="true" /> </tasks> </configuration> </execution> <execution> <id>clean</id> <phase>clean</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> <echo message="make clean ..."/> <exec dir="src/main/c" executable="make" failonerror="true"> <arg line="clean"/> </exec> </tasks> </configuration> </execution> </executions> </plugin> </plugins> </build> ...* 代码中定义了两个execution节点,分别执行原来Makefile中定义的make和make clean。这里可以将tasks节点定义成任意自己想要运行的ant任务;* 在第一个execution节点下,把phase定义成package,goal定义成run,是为了使在运行"mvn package"的时候自动执行第一个execution节点下的ant任务;* 在第二个execution节点下,把phase定义成clean,goal定义成run,是为了使在运行"mvn clean"的时候自动执行第二个execution节点下的ant任务;
转自:http://blog.csdn.net/kongxx/article/details/6998965
相关文章推荐
- light oj 1011Marriage Ceremonies
- mac OS X下终端使用tree命令列目录
- 百度地图接口调用
- 教你如何迅速秒杀掉:99%的海量数据处理面试题
- 攻下隔壁女生路由器后,我都做了些什么
- 全注解SSH
- Implement Queue using Stacks
- 百度笔试题--钓鱼比赛
- Dijkstra理解
- iOS中的UIToolBar
- 《未来的程序员》
- U3D UGUI学习2 - RectTransform
- Java记录 -34- Arrays类解析
- 腾讯校招技术岗面试经历及总结(已发offer)
- 【数据结构之旅】顺序栈入门操作
- 学习日志---Apriori算法发现频繁集
- Android第八讲——多媒体(四)播放视频(mp4/3gp) MediaPlayer
- hdu 5011 nim博弈变形
- TCP/IP发送图片,swing.JPanel显示并更新图片(二、图片发送和发送/接受的同步)
- 2015.9.3反法西斯胜利70周年大阅兵评论