错误:jvm目标兼容性应设置为相同的Java版本

d7v8vwbk  于 2023-10-18  发布在  Java
关注(0)|答案(2)|浏览(282)

我是Android新手。在运行模块时,我得到以下错误:
任务“:info:compileKotlin”执行失败。
'compileJava'任务(当前目标为1.7)和'compileKotlin'任务(当前目标为17)jvm目标兼容性应设置为相同的Java版本。
请给我解决方案
我尝试在项目结构中更改Gradle插件。和gradle jdk但什么也没有发生

cbjzeqam

cbjzeqam1#

您遇到的错误消息表明为compileJava任务设置的Java目标版本与Gradle项目中的compileKotlin任务不匹配。要解决此问题,您需要确保将这两个任务配置为使用相同的Java版本。
根据https://www.oracle.com/java/technologies/javase/jdk7-naming.html,在JDK 7和JRE 7中,版本字符串是1.7和1.7.0,所以你应该使用“1.7”作为Kotlin的编译目标,而不是“17”!
我觉得应该是这样的:

  1. kotlinOptions {
  2. jvmTarget = '1.7'
  3. }
ou6hu8tu

ou6hu8tu2#

我可以通过使用下面的代码来解决这个问题

  1. subprojects {
  2. afterEvaluate{
  3. tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile) {
  4. if (project.plugins.hasPlugin("com.android.application") || project.plugins.hasPlugin("com.android.library")) {
  5. kotlinOptions.jvmTarget = android.compileOptions.sourceCompatibility
  6. } else {
  7. kotlinOptions.jvmTarget = sourceCompatibility
  8. }
  9. }
  10. }
  11. }

相关问题