Ошибка компиляции Kotlin: compileDebugKotlin — что делать?
Где найти подробный лог ошибки?
Первое, что нужно сделать — открыть панель Build внизу Android Studio (обычно вкладка Build Output). Однако часто сообщение "See log for more details" не даёт прямой ссылки. Нажмите на иконку Toggle view (глаз) или переключитесь на вкладку Build — иногда там скрыт текст.
Если это не помогло, откройте View → Tool Windows → Build. В выпадающем меню (иконка шестерёнки) включите опцию Show Stack Trace. После повторной сборки вы увидите полный стек ошибки — ищите строку с Kotlin: [ошибка].
Основные причины и решения
- Несовместимость версий Kotlin и Gradle. Убедитесь, что версия Kotlin (в корневом
build.gradle.kts) соответствует версии плагина. Например, для Kotlin 1.9.0 нужен Gradle 7.6+. Проверьте вgradle-wrapper.properties:distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-all.zip - Конфликт версий Kotlin и Android Gradle Plugin (AGP). AGP 8.x требует Kotlin 1.8+. Обновите в корневом
build.gradle.kts:plugins { id("com.android.application") version "8.2.0" apply false id("org.jetbrains.kotlin.android") version "1.9.22" apply false } - Проблемы с кэшем. Выполните
File → Invalidate Caches / Restart, затемBuild → Clean ProjectиBuild → Rebuild Project. - Ошибка в коде Kotlin. Проверьте синтаксис — например, не забыли ли импорт
import android.widget.TextView. В вашем коде он отсутствует! Добавьте его в начало файла. - Неверная настройка JVM target. В вашем
kotlinOptionsуказанjvmTarget = "1.8", но современные AGP требуют минимум 17. Измените:
И вkotlinOptions { jvmTarget = "17" }compileOptions:compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 }
Пошаговый план исправления
- Откройте Build Output и найдите точную строку с ошибкой (например, "Unresolved reference: TextView").
- Добавьте недостающие импорты в
MainActivity.kt. - Обновите версии Kotlin и Gradle до актуальных (см. выше).
- Измените JVM target на 17.
- Сделайте File → Invalidate Caches / Restart и пересоберите проект.
После этих шагов ошибка должна исчезнуть. Если нет — проверьте, не используется ли в проекте kotlin-android-extensions (он устарел), и замените на ViewBinding или findViewById.
Альтернативный подход: использование Build Analyzer
Если ручной поиск логов не дал результата, воспользуйтесь встроенным инструментом Build Analyzer в Android Studio (начиная с версии Arctic Fox). Он покажет все ошибки и предупреждения в удобном виде.
Для запуска: после неудачной сборки нажмите на ссылку "Build Analyzer results" в окне Build Output. Если её нет, перейдите в View → Tool Windows → Build Analyzer. Там вы увидите дерево задач — найдите :app:compileDebugKotlin и разверните его. Внутри будут конкретные ошибки с номерами строк.
Дополнительная проверка
- Проверьте
settings.gradle.kts— возможно, там неправильно указанpluginManagement. - Убедитесь, что в
gradle.propertiesне стоитandroid.useAndroidX=false(должно бытьtrue). - Попробуйте временно отключить ProGuard: в
build.gradle.ktsдля debug-сборки установитеisMinifyEnabled = false.
Если ничего не помогает — создайте новый проект с теми же настройками и перенесите код. Часто это быстрее, чем искать корень проблемы в старых конфигах.