Обновление с Kotlin 1.3.31 -> 1.3.40 ломает сборку Android - PullRequest
3 голосов
/ 22 июня 2019

Если я пытаюсь перейти на последнюю версию Kotlin в моем проекте Gradle, я получаю следующую ошибку при создании моего подпроекта Android:

e: /(redacted)/AndroidLauncher.kt: (8, 15): Cannot access built-in declaration 'kotlin.Unit'. Ensure that you have a dependency on the Kotlin standard library

Понижение до 1.3.31 - сборка в порядке. Я также попытался обновить версию com.android.tools.build с 3.4.0 до 3.4.1, но без разницы.

Ошибка ясно показывает, что есть проблема с поиском Kotlin STL. Есть ли какая-то новая зависимость, которую мне нужно добавить, или плагин, который мне нужно применить?

1 Ответ

2 голосов
/ 25 июня 2019

Это поведение является результатом недавно исправленной проблемы https://youtrack.jetbrains.com/issue/KT-19227. Ранее некоторые встроенные объявления, такие как kotlin.Unit, загружались из внутренних компонентов компилятора, когда скомпилированный модуль не имел зависимости от stdlib Kotlin.,В настоящее время такая ситуация приводит к сбою сборки, что является менее удивительным поведением.

Для повторной компиляции проекта добавьте зависимость implementation(kotlin("stdlib")) в подпроект * android.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...