【发布时间】:2019-10-03 13:00:57
【问题描述】:
我正在尝试使用 Gradle 5.4 和 Intellij 为某些子项目创建具有不同 Java 版本的多重构建项目。
首先我更新了我所有的子项目,在 build.gradle 的开头有下面的代码
apply plugin: 'java'
sourceCompatibility = JavaVersion.VERSION_1_6
targetCompatibility = JavaVersion.VERSION_1_6
在 Intellij 中导入 Gradle 项目后,Intellij 已更新为带有以下行的 iml 文件:
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6">
然后我用 java 8 而不是 Java 6 更新了一个特定的子项目,如下所示 {代码} 应用插件:'java' sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 {代码} 但iml文件没有改变。我尝试了不同的东西,但似乎 gradle 忽略了 Java 8。我将 Java 8 更改为 Java 7,并且 iml 文件更新为:
我用 sourceCompatibility = JavaVersion.VERSION_1_8 用 java 9 更新了 gradle 文件,然后 gradle 更新了所有项目以使用 java 8!
甚至将源和目标兼容性设置为 Java 1.6 的子项目。
这是一个错误还是我错过了什么?
我不知道它是否相关的是,当我运行 compileJava 时,我收到以下警告:
warning: [options] bootstrap class path not set in conjunction with -source 1.6
【问题讨论】:
标签: gradle build build.gradle multi-project