3

我正在使用 gradle 工具 API 为我自己的构建脚本运行功能测试。

我想访问任务的属性,例如JavaCompile 任务的destinationDir,但我不知道如何完成。

简单的例子:

我的 buildScript 中的片段(我定义了一个 SourceSet 'openjpa'):

compileOpenjpaJava {
    destinationDir = file(getOpenjpaClassesDir())
}

private String getOpenjpaClassesDir(){
    return "build/classes_openjpa"
}

在我的功能测试中,我读到了一种访问任务的方法,但我无法访问destinationDir-property。

GradleProject project = connection.getModel(GradleProject.class);
project.tasks.each { myTask ->
    if ("compileOpenjpaJava" == myTask.name) {
        return myTask.destinationDir.absolutePath // brings a runtime error like: unknown property 'destinationDir'
    }
}

没有答案的类似问题在这里:Gradle tooling api get task outputs

是否可以访问任务的属性?

谢谢简

4

0 回答 0