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

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

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


当前回答

如果你在android项目中

在你的应用的build.gradle中 在android {}

android{
//other configs...
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

其他回答

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

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

如果你在android项目中

在你的应用的build.gradle中 在android {}

android{
//other configs...
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
}

如果以上答案都无效,您可以在kotlin dsl中执行此操作

android {
...

    tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
        kotlinOptions {
            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版本。它会直接带您到选项。

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