编辑: Gradle Modules Plugin
从1.5.0版本开始支持此功能。
这是一个工作
build.gradle片段:
plugins { id 'java' id 'org.javamodularity.moduleplugin' version '1.5.0'}repositories { mavenCentral()}dependencies { compileonly 'org.projectlombok:lombok:1.18.6'}modularity.mixedJavaRelease 8好的,我设法通过以下方法使它起作用:
- 禁用
org.javamodularity.moduleplugin
- 删除自定义源集(没有必要)
- 添加自定义
compileModuleInfoJava
任务并将其设置--module-path
为compileJava
任务的类路径(受此Gradle手册的启发)
这是的完整源代码
build.gradle:
plugins { id 'java'}repositories { mavenCentral()}dependencies { compileonly 'org.projectlombok:lombok:1.18.6'}compileJava { exclude 'module-info.java' options.compilerArgs = ['--release', '8']}task compileModuleInfoJava(type: JavaCompile) { classpath = files() // empty source = 'src/main/java/module-info.java' destinationDir = compileJava.destinationDir // same dir to see classes compiled by compileJava doFirst { options.compilerArgs = [ '--release', '9', '--module-path', compileJava.classpath.asPath, ] }}compileModuleInfoJava.dependsOn compileJavaclasses.dependsOn compileModuleInfoJava笔记:
- 它编译



