IntelliJ中的Gradle刷新更改了模块的语言级别

时间:2016-04-18 14:19:45

标签: java intellij-idea gradle intellij-15

我有一个Gradle项目,它包含一个Android库模块和一个普通的旧Java模块。 (Android库模块依赖于普通的Java模块。)

在Android库模块的build.gradle文件中,我有:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

在普通旧Java模块的build.gradle文件中,我有这个:

compileJava {
    sourceCompatibility = "1.8"
    targetCompatibility = "1.8"
}

当我点击IntelliJ IDEA 15中的Gradle刷新按钮时,Android模块的语言级别设置为Java 8(正如我所期望的那样),但Java模块的语言级别设置为Java 1.6。 为什么IntelliJ会在刷新时将Java模块的语言级别设置为Java 8?

1 个答案:

答案 0 :(得分:1)

如果您使用新的JavaVersion.VERSION_1_8编译器或Jack的{​​{1}}插件,则只能使用Retrolambda

所以你应该使用:

Gradle

就Intellij / Android Studio语言设置而言:

  1. 文件 - >项目结构:
  2. enter image description here

    1. 您应该相应地设置项目语言设置:
    2. enter image description here