maven-antrun-plugin提供在maven中运行ant任务的能力。
基本配置如下:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> <executions> <execution> <phase>prepare-package</phase> <goals> <goal>run</goal> </goals> </execution> </executions> <configuration> ... </configuration> </plugin> </plugins> </build>
这里phase是一个maven生命周期中的一个phase,maven-antrun-plugin的一个最有用的goal就是run (还有一个goal是help)。
剩下的就是configuration的配置了。
maven-antrun-plugin可用的配置不太多(在1.7上只有7个有效的配置):
customTaskPrefix | String | 1.5 | The xml tag prefix to use for the built in Ant tasks. This prefix needs to be prepended to each task referenced in the antrun target config. For example, a prefix of "mvn" means that the attachartifact task is referenced by "<mvn:attachartifact>" The default value of an empty string means that no prefix is used for the tasks. |
exportAntProperties | boolean | 1.7 | Specifies whether the Ant properties should be propagated to the Maven properties. Default value is: false. |
failOnError | boolean | 1.7 | Specifies whether a failure in the ant build leads to a failure of the Maven build. If this value is 'true', the Maven build will proceed even if the ant build fails. If it is 'false', then the Maven build fails if the ant build fails. Default value is: true. |
propertyPrefix | String | 1.4 | String to prepend to project and dependency property names. |
skip | boolean | 1.7 | Specifies whether the Antrun execution should be skipped. Default value is: false. |
target | PlexusConfiguration | 1.5 | The XML for the Ant target. You can add anything you can add between <target> and </target> in a build.xml. |
versionsPropertyName | String | - | The name of a property containing the list of all dependency versions. This is used for the removing the versions from the filenames. Default value is: maven.project.dependencies.versions. |
其中最有用的就是target参数了,在target参数中可以写任何在ant的build.xml里可以设置的内容。
下面是一个示例:
打印内容
可以用echo来打印内容:
<configuration> <target> <echo level="warning" message="running" /> </target> </configuration>
运行这个tast可以看到在最后有输出:
main:
[echo] running
替换
在上一篇文章里我们介绍一replacer插件的用法。用ant也可以执行一些replace的任务。
<target> <copy todir="src/main/resources"> <fileset dir="src/test/resources" includes="**/*.txt" /> </copy> <replace dir="src/main/resources"> <replacefilter token="{book.name}" value="Thinkin in Java" /> <replacefilter token="{author.name}" value="Bruce Eckel" /> </replace> </target>
因为ant 的 replace 命令不支持指定输入目录,所以需要先做一个拷贝。这里先把所有的src/test/resources下的以 .txt 结尾的文件拷到 src/main/resources 目录下;然后在 src/main/resources 目录下做替换。
这里是使用的多文件多替换,也可以像replacer插件一样,单文件单替换:
<target> <replace file="a.txt" token="{book.name}" value="Thinkin in Java" /> </target>
相关推荐
maven-antrun-plugin-3.0.0.jar
maven-antrun-plugin-1.3.jar maven-antrun-plugin-1.3.jar maven-antrun-plugin-1.3.jar
java运行依赖jar包
标题中的“用谷歌的closure-compiler + maven-antrun-plugin”表明了本文将探讨如何结合Google的Closure Compiler工具和Maven的Antrun插件来优化JavaScrip项目。Closure Compiler是一款强大的JavaScript代码压缩器,...
此外,如果问题仍然存在,可以尝试添加一个Maven的Clean Plugin配置,设定特定目录不被清理,或者使用maven-antrun-plugin来手动处理这个冲突。例如: ```xml ... <plugin> <groupId>org.apache.maven....
java运行依赖jar包
官方离线安装包,测试可用。请使用rpm -ivh [rpm完整包名] 进行安装
maven-jar-plugin-3.1.1.jar
maven-antrun-plugin-1.3.jar maven-archiver-2.2.jar maven-artifact-3.2.1-sources.jar maven-assembly-plugin-2.2-beta-5.jar maven-bundle-plugin-1.0.0.jar maven-clean-plugin-2.4.1.jar maven-clean-plugin-...
maven-plugin-plugin-1.5.2.jar
1. **打包**:在项目开发完成后,开发者可以使用`maven-assembly-plugin`或`maven-shade-plugin`进行打包。`assembly-plugin`用于创建自定义的归档文件,如包含所有依赖的ZIP或JAR。`shade-plugin`则可以合并多个JAR...
maven-plugin-3.0.0-1.jar
有些人第二次考虑,来到Maven-AntRun-Plugin并使用一些ant任务。 但是,为什么不存在一个可以简单地打印出某种消息的简单小插件。 正是在这种情况下,才打算使用Echo Maven插件。执照问题追踪器用法第一种也是最...
为此,Maven 提供了 `maven-antrun-plugin`,它允许在 Maven 构建流程中运行 Ant 任务。在 `pom.xml` 中定义 Ant 任务,可以充分利用两者的优点。 在实际开发中,我们需要根据项目需求选择和配置合适的 Maven 插件...
这样,您可以确保您不会浪费时间在Apache Maven范围之外的东西上。 假设您的问题不存在,请提交该问题的票证。 清楚地描述问题,包括在出现错误时重现的步骤。 确保填写您知道存在问题的最早版本。 在GitHub上分叉...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。请使用rpm -ivh [rpm完整包名] 进行安装