当前位置: 首页 > 知识库问答 >
问题:

如何使用gradle和Kotlin为android studio设置jvm目标?

东门文斌
2023-03-14

在尝试编译用Kotlin编写的单元测试时,我得到以下错误。

任务:app:CompileDebugunitTestKotlin失败...无法将用JVM目标1.7生成的字节码内联到正在用JVM目标1.6生成的字节码中。请指定正确的“-jvm-target”选项

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

以及在根build.gradle中配置所有kotlin编译任务:

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
    kotlinOptions {
        jvmTarget = '1.8'
    }
}

共有1个答案

尉迟阳煦
2023-03-14

这是一个暂时的Android Studiobug。我需要将这些行添加到应用程序的gradle文件中:

android {
    ...
    compileOptions {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }
    kotlinOptions {
        jvmTarget = "1.8"
    }
    ...
}
 类似资料:
  • 我对kotlin和gradle是新手,试图建立我的第一个项目: 然后得到错误消息“src\main\kotlin\main.kt:(4,4):Unresolved reference:println”。 我从http://kotlinlang.org/docs/reference/using-gradle.html复制的build.gradle文件 我希望标准库是自动包含的--或者我需要在这里添加

  • 使用Gradle 4.4.1和静态编程语言-DSL,我想在我的静态编程语言1.2.20项目中配置实验性的静态编程语言协程。这被证明是出奇困难的。 官方静态编程语言留档本身只提到Groovy DSL的Gradle,而不是静态编程语言。 Kotlin DSL项目有一个不起作用的协同路由示例。可能是针对较旧的Gradle版本(该脚本中的Kotlin版本为1.1.51,这本身就是可疑的)。 PS:甚至In

  • 我正在做一个Java项目,在这个项目中,我第一次尝试了Kotlin。我开始使用Intellij Idea中提供的JavaToKoltin转换器将一些类转换为Kotlin。除此之外,我的自定义异常现在已转换为Kotlin。但是,在这种情况下,异常处理不再正常工作 如果我在java代码中抛出一个自定义异常(例如,),则不会捕获该异常(请参见下面的代码)。 谁能给我解释一下为什么异常没有被捕获。是从Ko

  • IntelliJ IDEA 2018.2.3(Community Edition)中的Kotlin多平台模板在中依赖于JUnit 4.12,用于项目的JVM部分: 值得注意的是,我使用的是Gradle4.10(一些较旧的示例使用,它从Gradle4.6起就被弃用了)。关于如何设置的文档已经过时并且稀少: 如上所示,IntelliJ中构建的默认项目模板不使用JUnit 5。 JUnit团队提供了示例