当试图通过IntelliJ运行示例CorDapp (GitHub CorDapp)时,我收到以下错误:
不能将使用JVM目标1.8构建的字节码内联为当前的字节码 使用JVM目标1.6构建
如何修改IntelliJ设置,使所有字节码都使用相同的JVM目标构建?
当试图通过IntelliJ运行示例CorDapp (GitHub CorDapp)时,我收到以下错误:
不能将使用JVM目标1.8构建的字节码内联为当前的字节码 使用JVM目标1.6构建
如何修改IntelliJ设置,使所有字节码都使用相同的JVM目标构建?
当前回答
如果在Spring Boot/Kotlin项目中遇到这个消息,只需在pom.xml中将属性“Kotlin .compiler. jvmtarget”设置为“1.8”。
<properties>
<kotlin.version>1.3.70</kotlin.version>
<kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
</properties>
...
其他回答
您应该在build.gradle中配置如下内容
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
kotlinOptions {
jvmTarget = "1.8"
}
}
正如在Kotlin网站的using-maven文档中所写的:
你只需要把<kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>放到pom.xml的属性部分
设置sourceCompatibility = javaverse。VERSION_1_8启用了糖化,但它目前无法糖化Kotlin编译器使用的所有Java 8特性。
修复-设置kotlinOptions。jvmTarget到javaverse。应用模块Gradle中的VERSION_1_8会修复这个问题。
使用Java 8语言特性: https://developer.android.com/studio/write/java8-support
android {
...
// Configure only for each module that uses Java 8
// language features (either in its source code or
// through dependencies).
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
// For Kotlin projects
kotlinOptions {
jvmTarget = "1.8"
}
}
下一个解决方案帮助了我。添加到build.gradle
compileKotlin {
kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "1.8"
}
我做了所有的步骤,但没有成功,问题是
implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.4.32'
当我更新到
implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.5.30'
显示了这个问题,当我回到
implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.4.32'
问题解决了