0

3 つの異なるプロジェクトをビルドするために、このビルド ファイルを作成しました。

<?xml version="1.0" encoding="UTF-8"?>
<project name="Trinity" basedir="." default="buildall">

   <target name="project1">
        <ant dir="C:/work/project1"/>
   </target>

   <target name="project2" depends="project1">
        <ant dir="C:/work/project2"/>
   </target>

   <target name="project3" depends="project1, project2">
        <ant dir="C:/work/project3"/>
   </target>

   <target name="buildall" depends="project3"/>

</project>

これは現在機能しています。しかし、ビルドを行う前にプロジェクトをきれいにしたいです。

実際、私はこれを達成したい: C:/work/project1 ant clean build C:/work/project2 ant clean build C:/work/project3 ant clean build

前もって感謝します。

更新: Alex からの迅速な対応のおかげで、次のように新しい build.xml ファイルを作成しました。そして、うまく機能していると思いますが、どう思いますか?.

<?xml version="1.0" encoding="UTF-8"?>
<project name="Trinity" basedir="." default="buildall">

   <target name="project1">
        <ant dir="C:/work/project1" target="clean"/>
        <ant dir="C:/work/project1" target="build"/>
   </target>

   <target name="project2" depends="project1">
        <ant dir="C:/work/project2" target="clean"/>
        <ant dir="C:/work/project2" target="build"/>
   </target>

   <target name="project3" depends="project1, project2">
        <ant dir="C:/work/project3" target="clean"/>
        <ant dir="C:/work/project3" target="build"/>
   </target>

   <target name="buildall" depends="project3"/>

</project>

ありがとう。

4

1 に答える 1

2

antタスクに従って、外部antビルドファイルのターゲットを指定できます

<ant dir="C:/work/project1" target="clean build">

編集:

アリのドキュメントによると:

target属性を使用する代わりに、ネストされた要素を使用して複数のターゲットを指定できます。これらは、Antが、指定された順序で、そのように指定されたターゲットに依存関係を持つ単一のターゲットで呼び出されたかのように実行されます。

したがって、次の方法で複数のターゲットをリストできます。

<ant dir="C:/work/project1">
    <target name="clean" />
    <target name="build" />
</ant>

または、Project1,2,3 build.xmlファイルで新しいターゲットを定義することもできます。このファイルは、単一のxml要素として保持する場合cleanBuildに呼び出さcleanれます。build<ant dir="C:/work/project1" target="cleanBuild">

于 2012-03-21T19:49:44.767 に答える