Gradle ビルド スクリプトで使用するカスタム タスク/プラグイン (どちらも動作を拒否) を作成しようとしています。
groovy プラグインを使用しており、build.gradle 内ではなく、別のファイルでタスク/プラグインを宣言したいと考えています。
私のプロジェクトツリーは次のとおりです。
/project
.
|-gradle
|-src
|---main
|-----groovy
|-----java
|-----resources
|---test
|-----groovy
|-----java
|-----resources
|-build.gradle
私がやろうとしたことは、タスク/プラグインクラスを内部に作成src/main/groovy
し、build.gradle
.
少し例を挙げましょう。
src/main/groovy/mypackage/
TestTask.groovy:
package org.gradle.mypackage
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
public class TestTask extends DefaultTask {
@TaskAction
def doAction() {
}
}
build.gradle
plugins {
id 'groovy'
}
sourceCompatibility = 1.7
repositories {
mavenCentral()
}
dependencies {
compile(
localGroovy(),
gradleApi()
)
testCompile(
[ group: 'junit', name: 'junit', version: '4.11' ]
)
}
task testTask(type: TestTask)
gradle.build (クリーン、ビルドなど) を使用して何かをしようとすると、次のエラーが発生します。
エラー:(116, 0) ルート プロジェクト 'project' でプロパティ 'TestTask' が見つかりませんでした。
私は何を間違っていますか?使用import
中のタスクを試みましたが、それもうまくいきませんでした。build.gradle
import mypackage.TestTask
グルーヴィーなファイルはまったくコンパイルされないように見えますが、ドキュメントで読んだことから、グラドルはそれらをコンパイルしてクラスパスに追加する必要があります。