2009-07-24 9 views
0

いろいろな理由で、私は(私は現在のコードベースでこれを行う必要があると約束します;私はそれがうまいことを知っています)、同じビルドタスクで2回ターゲットを実行します。例えばANTタスクを手動で開始する

、私は再びターゲットfooの、その後、バー、その後、FOOを実行したいです。これは、私はすでに試したものの簡易版である:プロジェクトターゲットを実行するときに

<target name="foo"> 
    ... 
</target> 

<target name="bar" depends="foo"> 
    ... 
</target> 

<target name="project" depends="foo,bar"> 
    ... 
</target> 

この場合、FOOは一度だけ走りました。私もを退治しようとしたバーターゲットの属性とプロジェクトのが依存すること属性「FOO、バー、foo」という、それでも同じ結果を依存しています。

既に正常に完了していてもタスクを強制的に実行する方法はありますか?それともこれについてもっと良い方法がありますか?

答えて

3

antcall taskを使用すると、明示的にターゲットを呼び出すことができます。

私は、それがdependsメカニズムを使用するよりも優れた解決策だと思います。あなたが特定したように、これはすでに実行されたものを決定します。 Antcallは、それが前に実行されたかどうかに関係なく、ターゲットに実行を指示します。

呼び出しをパラメータ化して、呼び出しごとに何を行うかをカスタマイズできます。

+0

5秒間の応答ではI <3SOです。午前7時過ぎに。 –

+0

ここで(ロンドンで)午前中:-) –

+0

antは、makeとmakeに基づいていますが、ターゲット間の依存関係の原則を持っています。したがって、ターゲットが一度実行されると、それを依存関係を介して再度実行することはできません。 –

関連する問題