繁体   English   中英

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

[英]Gradle refresh in IntelliJ changes language level of modules

我有一个 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?

如果您使用的是新的Jack编译器或GradleRetrolambda插件,则只能使用JavaVersion.VERSION_1_8

所以你应该使用:

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_7
    targetCompatibility JavaVersion.VERSION_1_7
}

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

  1. 文件 -> 项目结构:

在此处输入图片说明

  1. 您应该相应地设置项目语言设置:

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM