0

独自のgradleプラグインを作成しています。

DefaultTask を拡張する MyRunTask で

私はこのようなことを書いています

@TaskAction
public void run() {

    ant.java {
        main = 'org.mylang.runtime.main.Main'
        classpath = project.configurations.runtime
        args = [
            project.mylang.mainMylangClass
        ]
        classpath jar.archivePath

    }
}

run は Jar タスクにリンクされているため、プログラムの実行中に jar を直接使用できます。このため、jar を ant.java になめるのが好きです。

  1. 自分の run taks を Jar タスクにリンクして、jar を自分の run に直接使用できるようにしたい
  2. classpath jar.archivePath が言うとき、初期化されてjarいません。
4

1 に答える 1

0

project.javaexecAnt の代わりにGradle を使用することをお勧めしますproject.ant.java。をハードコーディングする代わりに、タスク クラスは、(プラグインまたはビルド スクリプトによって) 外部から構成されたタイプproject.jar.archivePathのプロパティを受け入れる必要があります。タスク クラスが を実行するだけの場合は、プラグインまたはビルド スクリプトによって構成される通常のタスクの使用を検討してください。classpathIterable<File>jar.archivePathproject.javaexecJavaExec

于 2013-05-28T08:46:43.027 に答える