是否可以使用Maven执行build.xml
脚本?
这个脚本可以检出所有我的项目和子项目,我已经习惯了使用Maven,以前并没有太多使用ant的经验,但我知道ant可以与Maven一起使用。所以我的问题是:如何做到呢?
是否可以使用Maven执行build.xml
脚本?
这个脚本可以检出所有我的项目和子项目,我已经习惯了使用Maven,以前并没有太多使用ant的经验,但我知道ant可以与Maven一起使用。所以我的问题是:如何做到呢?
我真的不喜欢这种方法(要么使用Ant,要么使用Maven,但不要混用),但你可以使用外部build.xml
和Maven AntRun Plugin:
<project>
...
<build>
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<configuration>
<tasks>
<taskdef resource="net/sf/antcontrib/antcontrib.properties"
classpathref="maven.plugin.classpath" />
<ant antfile="${basedir}/build.xml">
<target name="test"/>
</ant>
</tasks>
</configuration>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>
然后运行mvn antrun:run
(或者将配置放在execution
中,如果你想将AntRun插件绑定到生命周期阶段,请参考用法页面)。
更新:如果您正在使用来自ant-contrib的东西,则需要将其声明为插件的依赖项。我已更新插件配置以反映此更改。另请注意我添加的taskdef
元素(我不确定您是否需要classpathref
属性)。
你可以通过Maven-Ant插件执行Ant脚本,但为什么需要Ant来检出你的项目?难道你没有将子项目组织到同一棵树中吗?
问题:无法创建任务或类型目标 原因:名称未定义。
- Gandalf StormCrow你没有把子项目组织到同一棵树上吗
- 你是什么意思? - Gandalf StormCrow
${basedir}
表示包含 pom.xml 文件的目录。 - Pascal Thiventmvn antrun:run
。 - Tom Saleeba