当试图通过IntelliJ运行示例CorDapp (GitHub CorDapp)时,我收到以下错误:

不能将使用JVM目标1.8构建的字节码内联为当前的字节码 使用JVM目标1.6构建

如何修改IntelliJ设置,使所有字节码都使用相同的JVM目标构建?


当前回答

请将此代码添加到app/build.gradle中的android部分

compileOptions {
        sourceCompatibility = JavaVersion.VERSION_1_8
        targetCompatibility = JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = JavaVersion.VERSION_1_8
    }

其他回答

在我的案例中,文件>设置> Kotlin编译器>目标JVM版本> 1.8

您可以通过以下方法修复此问题:

打开IntelliJ首选项 去构建,执行,部署>编译器> Kotlin编译器但其他设置> Kotlin编译器如果Android Studio > 3.4 将目标JVM版本更改为1.8 单击Apply

只需要添加build。gradle模块此代码kotlinOptions {jvmTarget = '1.8'}

对于Kotlin语言的Gradle (*. Gradle。KTS文件),添加这个:

android {
    [...]
    kotlinOptions {
        this as KotlinJvmOptions
        jvmTarget = "1.8"
    }
}

在Android Studio 4.3.2中,通过下面的过程添加是无效的。

打开IntelliJ首选项 去构建,执行,部署>编译器> Kotlin编译器但其他设置> Kotlin编译器如果Android Studio > 3.4 将目标JVM版本更改为1.8 单击Apply

原因是,Android studio无法在模块级Gradle文件中添加以下代码。请手动添加。

kotlinOptions {
    jvmTarget = "1.8"
}

只是为了插件,在android studio搜索目标JVM版本。它会直接带您到选项。