dhf*_*fsk 15
TLDR; 谢谢@franklin-yu"targetCompatibility ='1.7' - >你的用户可以用8编译并用7运行."
请参阅Gradle,"sourceCompatibility"与"targetCompatibility"?
targetCompatibility = '1.7' 为Java 7做了诀窍
使用sourceCompatibility = '1.7'的语言水平
Cle*_*usW 13
此功能刚刚作为Java 工具链添加到 Gradle 6.7 中:
// build.gradle.kts
plugins {
id("java-library") // or id("application")
}
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
}
Run Code Online (Sandbox Code Playgroud)
有了这个,Gradle 将自动为指定的 Java 版本下载和使用适当的 JDK(默认使用 AdoptOpenJDK)。
你可以试试这个:
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
tasks.withType<JavaCompile> {
options.compilerArgs.addAll(arrayOf("--release", "8"))
}
Run Code Online (Sandbox Code Playgroud)
这也将为您提供 JDK 合规性。您还可以看到以下相关问题:
-release编译器参数添加便捷方法在该build.gradle文件中,添加以下两行:
sourceCompatibility = '1.8'
targetCompatibility = '1.8'
Run Code Online (Sandbox Code Playgroud)
定义targetCompatibility生成的 JVM 字节码版本(这是应用程序用户需要的版本)。定义sourceCompatibility允许哪些源代码构造(例如,您需要 Java 1.8 或更高版本才能在源代码中使用 lambda 表达式)。
| 归档时间: |
|
| 查看次数: |
16908 次 |
| 最近记录: |