IntelliJ 附带的 JetGradle 插件显示我的项目存在冲突。它说我的 IDE 语言级别是 1.7,我的 Gradle 语言级别是 1.6。
以下代码为所有内容打印 1.7:
compileJava {
println project.sourceCompatibility
println project.targetCompatibility
println sourceCompatibility
println targetCompatibility
}
从命令行运行 Gradle 可以正常工作。在 IDEA 中运行它也可以。这两个都使用 1.7 JDK。我的 IDEA 项目和模块也配置为使用 1.7。
当我通过 Gradle 构建脚本导入项目时,版本默认为 1.6。我已将其更改为 1.7。
这个“Gradle 语言级别”是什么,我该如何修改它?
谢谢!
最佳答案
我有一个 java/kotlin 项目。在搞砸之后,我发现如果模块本身或主源集被赋予了正确的语言级别,我在 gradle.build 中应用插件的顺序实际上会受到影响:
plugins {
id 'org.jetbrains.kotlin.jvm' apply false
id 'idea'
}
// have to apply in this order to fix idea.module.languageLevel
apply plugin: 'java'
apply plugin: 'org.jetbrains.kotlin.jvm'
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
idea {
module {
jdkName = '1.8'
languageLevel = new IdeaLanguageLevel("1.8")
}
}
关于intellij-idea - IntelliJ IDEA 的 Gradle 语言级别是如何确定的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14446638/