ANTで単一のターゲットを実行する方法はわかっていますが、 "depends"属性もチェックしてターゲットの前に実行します。これを防ぐ方法やANTファイルを構造化する方法がありますので、これをもっと簡単に行うことができますか?ANT - 依存関係のない単一のターゲットを実行
答えて
ターゲットの "withoutdeps"バージョンを作成します。あなたは
<target name="A" depends="B,AwithoutDeps"/>
<target name="AwithoutDeps">
...
</target>
へ
<target name="A" depends="B">
...
</target>
の変更があった場合は今、あなたは(そしてAwithoutDeps Bをオフに解雇されます)通常通りAを呼び出すことができますまたは単に明示的AwithoutDepsを呼び出し、何DEPSは解雇しません。これらより、いくつかの優れた名を選択し、もちろん
[順序で依存関係を「依存」と呼ぶことに注意してください];)
あなたの唯一の単純な選択は、問題のターゲットのコピーを作成し、依存関係を持たないようにすることだと思います。
私はちょうど依存する属性を削除しています(これはほぼ同じことです)が、おそらくもっと洗練された解決方法があると思います。 – GreenieMeanie
これをantコマンドラインのオプションにするとよいでしょう。 – user959690
が、私はこのような何かをするだろう:
<target name="doSomethingNoDeps">
...
</target>
<target name="doSomething" depends="doSomeOther">
<antcall target="doSomethingNoDeps"/>
</target>
一つの可能性を使用することです依存対象の属性はif
またはunless
です。たとえば:
<target name="dependency1" unless="dependency1.disabled">
<echo>Hello from dependency 1!</echo>
</target>
<target name="dependency2" unless="dependency2.disabled">
<echo>Hello from dependency 2!</echo>
</target>
<target name="main-target" depends="dependency1, dependency2">
<echo>Hello from the main target!</echo>
</target>
は、今あなたがしたくない依存関係を除外する-Ddependency1.disabled=true
および/または-Ddependency2.disabled=true
でのAntを実行することができますが、デフォルトではまだそれらを含めることになります。
もちろん、それが簡単な場合は、「グローバル」dependencies.disabled
プロパティを設定することもできます。あなたが(依存関係がデフォルトで除外されている)、この動作の逆を行いたい場合は
、ちょうどif
代わりunless
のを使用(し、代わりに「無効」の「dependency1.enabled」のようなプロパティ名を持っています) 。
私はコードの一部でマクロを作りました。 その後、2つのターゲットを作成し、1つは "arg1"、2番目は "arg2"でマクロを呼び出します。 パラメータを設定せずにマクロを作成することもできます。
答えは問題を解決する方法を示す必要があります。あなたがしたことを示してください。 –
- 1. Antターゲットの依存関係ツリービューア
- 2. Antターゲットを展開する依存関係のアーカイブ
- 3. monorepoの単一依存関係管理
- 4. Antビルドスクリプト、antcall、依存関係など
- 5. ANTスクリプトの依存関係の問題
- 6. Maven-Ant依存関係の問題
- 7. 依存関係にかかわらず最終的なantターゲットを強制的に実行する方法
- 8. ant:「依存する」ターゲットの実行順序?
- 9. 依存関係を持つAntスクリプト
- 10. %と*一緒に依存関係の行
- 11. メイクジップタスクの実行の依存関係が
- 12. ターゲット依存関係ビルドオーダーを指定
- 13. IntelliJプリントテストの実行依存関係
- 14. シンプルなApache Ant質問:ライブラリの依存関係を含める
- 15. 依存関係の依存関係
- 16. 依存関係のプロパティ依存関係
- 17. ローカルの単一の依存関係をローカルにする
- 18. 原因にスキップされ、ターゲットの依存関係スキップ
- 19. 異なるスコープの依存関係内のMaven依存関係
- 20. CMake:兄弟ターゲット依存関係間で実行順序を強制する
- 21. document()依存関係を単一のXSLTに統合
- 22. グラデルビルドに基づくIntelliJの単一依存関係の更新
- 23. 最初にパラレルメイクで依存関係のない偽のターゲットを実行しますか?
- 24. Gradle依存関係とGradle依存関係のEclipseの違い
- 25. sbt 0.10での依存関係の収集(すべての依存関係jarをターゲット/ scala-version/lib /に置く)
- 26. NPM CLIインストール/アップデート単一のgit依存関係
- 27. ターゲットの依存関係が実行される前にAntターゲットの状態をチェックする方法がありますか?
- 28. Antのアイビーの依存関係の解決
- 29. 依存関係のlibを持つAntビルドAndroidプロジェクト
- 30. Androidの依存関係が不一致
私のソリューションに非常によく似ています - 違いは単なるスタイルの問題だと思います。これはantの依存性機能を利用しています。私のソリューションは "カプセル化"機能を利用しています。 – Jared
ありがとう!これは、コピーして貼り付けるよりもきれいです。 – GreenieMeanie
@Jared - 私もantcallについて考えましたが、それはプロパティのコピーなどを設定するので、より高価なAFAIKです。しかし、それは大したことではありません... –