0

GradleビルドファイルからAntターゲット「jar」を呼び出すにはどうすればよいですか? 私は無駄に多くのことを試しました。Ant ビルド ファイルで「jar」ターゲットの名前を変更することはできません。私は Ant ベースのビルド システムを Gradle に変換する過程にあり、最初に必要なステップは、Gradle からすべての Ant ターゲットを呼び出すことです。

「jar」タスクはデフォルトのGradleタスクであるため、上書き/上書きしていますが、同様の名前のAntターゲットを呼び出す必要があります。

Gradle build.gradle ファイル:

// Prevents error "Cannot add task {taskname} as a task with that name already exists"
ant.project.addTarget('clean', new org.apache.tools.ant.Target())
ant.project.addTarget('jar', new org.apache.tools.ant.Target())
ant.project.addTarget('test', new org.apache.tools.ant.Target())
ant.project.addTarget('javadoc', new org.apache.tools.ant.Target())

ant.importBuild 'build.xml'

task jar(overwrite: true) {        
    println 'jar'
}

task clean(overwrite: true) {        
    println 'clean'
}

task test(overwrite: true) {
    println 'test'
}

そして私のAnt build.xml:

<target name='jar' description='jar'>
    <echo>Called jar task in ant build</echo>
</target>

Gradle v1.2 の実行

------------------------------------------------------------
Gradle 1.2
------------------------------------------------------------

Gradle build time: Wednesday, September 12, 2012 10:46:02 AM UTC
Groovy: 1.8.6
Ant: Apache Ant(TM) version 1.8.4 compiled on May 22 2012
Ivy: 2.2.0
JVM: 1.6.0_25 (Sun Microsystems Inc. 20.0-b11)
OS: Linux 2.6.37.6 amd64
4

1 に答える 1

0

Gradle はjar、Java プラグインを適用するときにのみタスクを追加します。これは、Ant ビルドをインポートするプロジェクトに対して行うべきではありません。ant.project.addTargetGradle ビルド スクリプトから呼び出す必要はないと思います。

于 2012-11-07T02:28:47.973 に答える