Устаревшее предупреждение Kotlin Runtime в Android Studio
После загрузки и установки последнего плагина Kotlin у меня есть устаревшее предупреждение Runtime Kotlin от Android Studio, которое говорит мне:
Ваша версия времени выполнения Kotlin в библиотеке "kotlin-stdlib-1.1.2" 1.1.2, а версия плагина - 1.1.2-release-Studio2.3-3. Библиотека Runtime должна быть обновлена, чтобы избежать проблем с совместимостью.
Я попытался нажать кнопку Обновить время выполнения, но получил другое сообщение:
Обновление версии автоматической библиотеки для проектов Gradle в настоящее время не поддерживается. Обновите файл build.gradle вручную.
Как решить эту проблему?
Ответы
Ответ 1
Вы можете обновить версию Kotlin в файле build.gradle
уровня build.gradle
. Если вы настроили его обычным способом, вы должны иметь следующую строку сверху:
ext.kotlin_version = '1.1.2'
Чтобы перейти на версию, соответствующую вашему плагину, просто измените эту строку на:
ext.kotlin_version = '1.1.2-3'
Изменить (чтобы ответить на вопрос ниже):
Ошибка говорит вам, что вам нужно обновить вашу версию, вопрос в том, где узнать, что вы должны вставить 1.1.2-3
вместо того, чтобы сказать, например, 1.1.2-release-Studio2.3-3
.
Лучший способ узнать последнюю версию Kotlin - перейти на kotlinlang.org и поискать "Последняя версия". Должно быть прямо на первой странице.
Еще одна вещь, которую нужно сделать, если номер версии нетривиален, как это, - это проверить репозитории, в которых находятся версии. В случае с Android вы, вероятно, получите его от jcenter, для которого вы можете найти страницу репозитория, в которой перечислены все доступные версии.
Вы также можете просмотреть исходный maven-репозиторий jcenter, где файлы фактически размещены, перейдя сюда, или посмотреть Kotlin либо в mvnrepository, либо в mavencentral (необработанная версия последнего здесь).
Ответ 2
В вашем файле (Project: [projectName])
build.gradle
найдите это: ext.kotlin_version = 'xxx'
и замените xxx текущей версией вашего плагина Kotlin. ![enter image description here]()
Чтобы проверить, какая версия вашего плагина Kotlin является текущей:
-
Перейдите: Инструменты → Kotlin → Настройка обновлений плагинов Kotlin
-
Нажмите "Проверить снова". Через секунду вы увидите версию вашего плагина Kotlin. (Если не обновлено, ваш плагин Kotlin будет обновлен.)
![enter image description here]()
Примечание: также проверьте свой файл (Module: app)
build.gradle
и убедитесь, что вы не используете:
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:1.2.21"
но
compile 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.40'
Обратите внимание на разницу "... jre7..." → "... jdk7...". Также замените "1.2.40" текущей версией плагина Kotlin.
Ответ 3
он жаловался (на Android Studio 3.0.1)... скорее всего, из-за зависимостей библиотек ссылок:
Ваша версия времени исполнения Kotlin в библиотеке org.jetbrains.kotlin: kotlin-stdlib: [email protected] составляет 1.1.3, а версия плагина - 1.1.51-release-Studio3.0-1.
то я ввел строение против требуемой версии, на уровне модуля build.gradle
:
configurations.all() {
resolutionStrategy.force 'org.jetbrains.kotlin:kotlin-stdlib:1.1.51'
}
и результат:
./gradlew app:dependencies | grep kotlin
Download https://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-stdlib/1.1.51/kotlin-stdlib-1.1.51.pom
| | +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 -> 1.1.51
...
Ответ 4
Есть две части, которые вы можете обновить:
- Kotlin Runtime для проекта
- плагин kotlin
Ответ Иво Стоянова показывает, как это сделать с помощью меню студии android. Когда я получил сообщение об ошибке и попробовал это (обновить плагин kotlin) в одиночку, он все еще жаловался на время выполнения kotlin. Вы можете обновить это для каждого отдельного проекта, добавив строку к ext.kotlin_version в gradle сборки проекта, как показывают некоторые другие ответы. Но для этого вам нужно знать версию Kotlin. В качестве альтернативы, вы также можете сделать это через меню, как я покажу здесь ниже, с бонусом, который Android Studio показывает вам доступные версии, и вы можете выбрать самые последние.
![step 1]()
![step 2]()
![step 3]()
![step 4]()
И тогда андроид студия добавит в соответствующую строку в вашем проекте сборку gradle.
Ответ 5
изменение вашего ext.kotlin_version с "1.1.2-4" до ext.kotlin_version = '1.1.2-5' решило проблему для меня
Ответ 6
последняя версия kotlin 1.2.41 использует это и синхронизирует ваш проект.
buildscript {
ext.kotlin_version = '1.2.41'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
Ответ 7
Эта проблема возникает, когда вы обновляете версию плагина kotlin, появившуюся в Android Studio, но проблема заключается в том, что текущая версия Android Studio не может динамически изменить плагин kotlin gradle, который находится в файле Build.gradle уровня вашего проекта.
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.10"
}
Как решить эту проблему?
Таким образом, вам нужно вручную изменить эту версию, вы можете найти здесь
Ответ 8
buildscript {
ext.kotlin_version = '1.2.50'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
Ответ 9
искать эти две строки кода
ext.kotlin_version= '1.3.11'
Путь к классам "org.jetbrains.kotlin: Котлин-Gradle-плагин: $ kotlin_version"
замените $ kotlin_version на фактическое значение (здесь это 1.3.11)
classpath "org.jetbrains.kotlin: kotlin-gradle-plugin: 1.3.11"
после этого ваша IDE автоматически предложит вам обновленную версию
счастливого кодирования :)
Ответ 10
По состоянию на 8 марта 2019 года текущая версия котлина - '1.3.21'
Под build.gradle
buildscript {
ext.kotlin_version = '1.3.21'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
ура
Ответ 11
Я сталкивался с этой проблемой несколько раз в Android Studio и IDEA и обнаружил, что если вы зайдете в файл Gradle своих проектов и в свои зависимости, если вы установите версию kotlin-gradle-plugin
$kotlin_version
то предупреждающее сообщение будет скажу вам, какую версию вам нужно установить ext.kotlin_version
.
buildscript {
ext.kotlin_version = '1.2.40'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
![enter image description here]()
Ответ 12
Kotlin новейшая версия:
buildscript {
ext.kotlin_version = '1.2.41'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
classpath 'com.google.gms:google-services:1.5.0-beta2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
Ответ 13
Немного раздражает, но студия иногда ведет себя так же. Следующие шаги могут решить проблему.
Идти к
Настройки → Построение, Выполнение, Разработка → Gradle → Использовать упаковщик Gradle по умолчанию (рекомендуется)
измените это на Use local и вернитесь на Use default. Студия спросит об обновлении gradle после закрытия окна настроек.
Ответ 14
Я столкнулся с той же проблемой после обновления моей андроид студии с 3.0.1 до 3.2.1. Моя проблема была решена после использования этого.
buildscript {
ext.kotlin_version = '1.2.51'
repositories {
google()
jcenter()
mavenCentral()
maven { url "https://jitpack.io" }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
Ответ 15
Я столкнулся с этой проблемой на последней Android-студии из Канарского канала. Возможно, вам стоит подумать о понижении рейтинга Android Studio до стабильной версии.
Это случилось для меня на Android Studio 3.0 RC1.