Androidビルドスクリプトがあります。プロジェクトで行われるカスタム作業には、Antターゲットの代わりにGantタスクを使用しようとします。興味深いビルドスクリプトの部分は次のようになります。
<taskdef name="gant" classname="org.codehaus.gant.ant.Gant">
<classpath>
<pathelement location="${gant.dir}/gant-1.9.7_groovy-1.8.4.jar" />
</classpath>
</taskdef>
<target name="-pre-build">
<gant target="targetA"/>
<gant target="targetB"/>
<gant target="targetC"/>
<gant target="targetD"/>
<gant target="targetE"/>
</target>
<target name="-pre-compile">
<gant target="targetF"/>
</target>
私のbuild.gantファイルには間違いなくこれらのターゲットがありますが、Antでビルドスクリプトを実行すると、次のようになります。
(...)\build.xml:55: java.lang.NoClassDefFoundError: groovy/util/AntBuilder
Antがラインに到達するとすぐに:
<gant target="targetA"/>
WindowsインストーラーファイルからインストールされたGantを備えたGroovy1.8.4と、Antビューを備えたEclipseHeliosを使用しています。Gant.dirプロパティには有効なパスがあるため、そうではありません。Groovyは、ターゲットが存在していても、build.gantファイル内でターゲットを見つけることができないようです。提供されたbuild.gantファイルへのフルパスでGantタスクを使用しようとしましたが、成功しませんでした。コンソールからAntスクリプトを実行する場合も同じことが起こります。Build.gantファイルはAntスクリプトで表示されます。
これを修正する方法はありますか?