我的项目有
Java(N个文件)和Groovy代码(仅1个文件). Java编译取决于这个单一的Groovy文件的Java编译类文件(compileJava任务成功).
当我不使用src / java作为srcDir之一在主> groovy> sourceSet部分,然后我收到一个错误,指出在groovy文件/类中没有找到类/符号.在ANT中,我们很容易在调用compile-java目标之前先调用compile-groovy目标,但是在Gradle中是同样的.
我读了一些帖子,发现如果我主要的> java部分为NULL,并指定主要> java的srcDir,这是主> groovy sourceSet部分中的src / java,那么它编译得很好.
我的
有什么办法吗?对于以下,以下应该是工作:
compileJava {
dependsOn compileGroovy
}
不过,这是一个无限循环.
要么
如何使用doFirst进行compileJava任务呢?
compileJava {
doFirst {
compileGroovy
}
}
这也不行.
build.gradle这个工作,但是在一个意义上,compileJava在这里就变得无用了,即使源代码有N个.的java文件在src / java或src / java-test等树中.我知道这个构建脚本正在工作,但是在逻辑上它可能会给开发人员带来一些混乱,如果他/他不熟悉为什么sourceSet for Groovy必须具有“src / java”作为其srcDir值.
apply plugin: 'java'
apply plugin: 'gro