使用以下Gradle设置
sourceCompatibility = 1.12
targetCompatibility = 1.12
tasks.withType(JavaCompile) {
options.incremental = true
options.compilerArgs
该项目将被编译,执行测试并在JDK 12上构建工件。但是,在具有以下常见项目结构的IntelliJ中
项目| _moduleA| _main| _test| _moduleB| _main| _test并且语言级别设置为12(Preview)-Switch Expressions,只有项目和两个模块都获得此语言级别。 main和test模块会丢失设置,并且IDEA表示刷新Gradle项目时将丢失设置。那么如何应用-enable-preview设置,以便源模块也保留该设置?
tasks.withType(JavaCompile) {
options.compilerArgs += "--enable-preview"
}
tasks.withType(Test) {
jvmArgs += "--enable-preview"
}
tasks.withType(JavaExec) {
jvmArgs += "--enable-preview"
}