Как исправить ошибку Android: Обнаружена несовместимость целевой JVM для задач ‘compileDebugJavaWithJavac’ (11) и ‘compileDebugKotlin’ (17)

Вопрос или проблема

Я изменяю targetSdkVersion и compileSdkVersion с 33 на 34. Для этого я изменил свой ddistributionUrl=https://services.gradle.org/distributions/gradle-8.2-all.zip. Проект успешно синхронизировался, но когда я пытаюсь его собрать, появляется ошибка: Обнаружена несовместимость целевой версии JVM для задач ‘compileDebugJavaWithJavac’ (11) и ‘compileDebugKotlin’ (17)

Я искал различные решения, где мы должны указать
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17

но в моем build.gradle нет compileOptions и kotlinOptions.

Ответ или решение

Для устранения ошибки "Inconsistent JVM-target compatibility detected for tasks ‘compileDebugJavaWithJavac’ (11) and ‘compileDebugKotlin’ (17)", связанной с несовместимостью версий JVM в вашем проекте Android, необходимо следовать нескольким шагам, чтобы убедиться, что настройки компиляции для Java и Kotlin находятся на одной версии.

Шаги для решения проблемы:

  1. Обновите Gradle и плагин Android:
    Убедитесь, что вы используете совместимые версии Gradle и Android Gradle Plugin. В вашем gradle-wrapper.properties файл можно указать:

    distributionUrl=https://services.gradle.org/distributions/gradle-8.2-all.zip

    В вашем build.gradle проекте нужно убедиться, что версия плагина Android соответствует:

    plugins {
       id 'com.android.application' version '8.2.0' apply false
    }
  2. Установите совместимость Java и Kotlin:
    Вам необходимо явно задать версии для sourceCompatibility и targetCompatibility в вашем build.gradle (в модуле приложения) файл. Если секции compileOptions и kotlinOptions отсутствуют, добавьте их следующим образом:

    android {
       compileSdkVersion 34
    
       defaultConfig {
           // Ваши настройки
           targetSdkVersion 34
       }
    
       compileOptions {
           sourceCompatibility JavaVersion.VERSION_17
           targetCompatibility JavaVersion.VERSION_17
       }
    
       kotlinOptions {
           jvmTarget = "17"
       }
    }
  3. Обновите зависимости Kotlin:
    Убедитесь, что вы используете последнюю версию компилятора Kotlin. В вашем build.gradle файле установите версию Kotlin, соответствующую необходимым требованиям:

    dependencies {
       implementation "org.jetbrains.kotlin:kotlin-stdlib:1.7.0" // Проверьте актуальную версию
    }
  4. Синхронизация проекта:
    После внесения этих изменений выполните синхронизацию проекта с Gradle, нажав на кнопку "Sync Now" в верхней части редактора Android Studio.

  5. Очистка и сборка проекта:
    Если синхронизация прошла успешно, попробуйте выполнить очистку и повторную сборку проекта. Для этого выберите “Build” > “Clean Project”, а затем “Build” > “Rebuild Project”.

Примечания:

  • Убедитесь, что ваши зависимости и другие библиотеки совместимы с Java 17.
  • Если проблема сохраняется, проверьте конфигурацию других модулей (если они есть), так как они также могут иметь несовпадающие целевые версии JVM.

Следуя этим шагам, вы должны устранить ошибку несовместимости версий JVM и успешно собрать ваш проект.

Оцените материал
Добавить комментарий

Капча загружается...