2009-07-29 6 views
0

ワイルドカードを使用してすべてのサブディレクトリにあるすべてのbuild.xmlで特定のターゲットを呼び出す方法(サブディレクトリ名をハードコーディングしない)以下の答えはハードコードされています。ハードコードなしでそれを行う方法はありますか?この質問に似てANT:サブディレクトリ内のすべてのbuild.xmlに対してtargetを呼び出す方法は?

Pass ant target to multiple build.xml files in subdirectories

答えて

0

私よ、私のbuild.propertiesファイル内のセットアップ異なる性質。私はこれらを使用してターゲット内のパスを動的に構築します。

あなたのbuild.propertiesファイルの場所を定義します。

<!-- all properties are in build.properties --> 
    <property file="build.properties" /> 

あなたの目標では、これらのプロパティを使用します

を限り、あなたはへの適切なパスを定義すると、私はあなたのプロパティファイルとして必要に応じて、動的なファイルを使用することができると思い

project.rootdir=c:/Deploy 
project.tempbuilddir = c:/Deploy/Temp/Inetpub 
project.builddir=c:/Deploy/Inetpub 
# Build prefix will be added to that tags urls (.../tags/${project.buildprefix}Build_${today.date}) 
project.buildprefix=ACA_ 

:ビルドプロパティで3210の

プロパティは、.iniファイルを設定に似ていますファイル。プロパティファイル(ColdFusion、PHP、JSPなど)を動的に書き込むために、それをサーバー側のファイルにポイントすることができます。

+0

これは私が求めていることをしません。私はトップレベルのbuild.xmlを持っています。トップレベルのすべてのサブディレクトリ内のすべてのbuild.xmlでタスク(つまりクリーン)を呼びたいと思っています。 – Tazzy531

0

<subant>タスクのための完璧な候補者のようですね。あなたは(それが中で使われている方法と同じですが、デフォルトは反対の)属性を「inheritall」を含んでいる場合、あなたはすべてのあなたの現在のプロジェクトのプロパティと、すべてを共有することができ

<subant target="sometarget"> 
     <fileset dir="." includes="*/build.xml" /> 
</subant> 

6

は、このようなAntのsubantタスクを使用しますあまりにも。また、必要に応じてメインのbuild.xmlファイルで定義されているタスクを上書きすることも非常に簡単です。

詳しくはhereをご覧ください。

関連する問題