Svn 使用Maven执行build.xml

Svn 使用Maven执行build.xml,svn,maven-2,svn-checkout,Svn,Maven 2,Svn Checkout,是否可以使用Maven执行build.xml脚本 这个脚本检查了我所有的项目和子项目,我刚刚习惯了使用maven,以前并没有使用太多ant,我知道ant可以与maven一起使用。所以我的问题是:如何通过执行ant脚本,但是为什么需要ant签出项目呢?您没有将子项目组织在同一棵树中吗?我真的不太喜欢这种方法(可以使用Ant或Maven,但不能混用),但您可以使用外部build.xml: ... ... org.apache.maven.plugins 第页) 更新:如果您使用的是ant cont

是否可以使用Maven执行
build.xml
脚本


这个脚本检查了我所有的项目和子项目,我刚刚习惯了使用maven,以前并没有使用太多ant,我知道ant可以与maven一起使用。所以我的问题是:如何通过执行ant脚本,但是为什么需要ant签出项目呢?您没有将子项目组织在同一棵树中吗?

我真的不太喜欢这种方法(可以使用Ant或Maven,但不能混用),但您可以使用外部
build.xml


...
...
org.apache.maven.plugins
第页)


更新:如果您使用的是ant contrib的东西,则需要将其声明为插件的依赖项。我已经更新了插件配置以反映这一点。还要注意我添加的
taskdef
元素(但我不确定您是否需要
classpathref
属性).

我将ant目标放在任务标记之间,我得到了这个错误
问题:无法创建任务或键入目标原因:名称未定义。
@khmarbaise
您没有将子项目组织在同一棵树中吗?${basedir}是哪个位置?在pom.xml旁边?或者?@Gandalf Yes,
${basedir}
表示包含pom.xml的目录。我使用antrun插件的v1.7尝试了这一点,现在似乎目标是运行,例如:
mvn antrun:run
<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>