Android Studio - Как указать параметр "-jvm-target" в модуле Java / Kotlin? - PullRequest
1 голос
/ 07 мая 2020

Недавно я пытался создать модуль Java / Kotlin для своего Android приложения. Когда я создавал Retrofit Interceptor, возникла ошибка:

Невозможно встроить байт-код, созданный с помощью JVM target 1.8, в байт-код, который создается с помощью JVM target 1.6. Укажите правильную опцию «-jvm-target».

Вот скриншот точной ошибки:

enter image description here

Я знаю, как установить -jvm-target для моего модуля Android. Но я не могу найти ответ, как установить его в модуле Java / Kotlin.


Вот что я уже пробовал:

[Решение 1 (не работает)]

sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8

compileKotlin {
    targetCompatibility(JavaVersion.VERSION_1_8)
}

[Решение 2 (не работает)]

kotlinOptions {
    jvmTarget = JavaVersion.VERSION_1_8.toString()
}

Приведенный выше код дал мне следующую ошибку:

Не удалось найти метод kotlinOptions () для аргументов

Ответы [ 2 ]

0 голосов
/ 06 июня 2020

У меня в сценарии сборки для моего Kotlin модуля, который работает в моем проекте, есть следующее:

apply plugin: 'kotlin'

compileKotlin {
    kotlinOptions.jvmTarget = JavaVersion.VERSION_1_8
}

dependencies {
    // your dependencies...
}
0 голосов
/ 07 мая 2020

Поддержка новой версии Gradle, как это

compileOptions {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }
...