Answers:
您可以在项目级别的build.gradle
文件中更新Kotlin版本。如果按常规方式配置了它,则顶部应该有以下一行:
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获得它,您可以在jcenter中找到存储库页面,其中列出了所有可用版本。
您也可以通过转到此处浏览实际托管文件的jcenter的原始maven存储库,或在mvnrepository或mavencentral(此处为后者的原始版本)上查找Kotlin 。
在(Project: [projectName])
build.gradle
文件中找到以下内容:
ext.kotlin_version = 'x.x.x'
并将xxx替换为当前版本的Kotlin插件。
为了检查哪个是您的Kotlin插件的当前版本:
注意:还要检查您的(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 ...”。另外,用您当前的Kotlin插件版本替换“ 1.2.40”。
它抱怨(在Android Studio 3.0.1上)...很可能是由于所引用库的依赖关系引起的:
您在'org.jetbrains.kotlin:kotlin-stdlib:1.1.3@jar'库中的Kotlin运行时版本为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
...
您可能需要更新两部分:
Ivo Stoyanov的答案显示了如何使用android studio菜单执行此操作。当我收到错误消息并尝试尝试此操作(更新kotlin插件)时,它仍然抱怨kotlin运行时。您可以在每个项目的基础上进行更新,方法是将ext.kotlin_version上的行添加到项目构建gradle中,如其他一些答案所示。但是您需要为此了解kotlin运行时版本。另外,您也可以通过菜单执行此操作,如下所示,这是android studio向您显示可用版本以及您可以选择最新版本的好处。
然后android studio将在您的项目构建gradle中添加适当的行。
将您的ext.kotlin_version从'1.1.2-4'更改为ext.kotlin_version ='1.1.2-5'为我解决了问题
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
}
}
截至2019年3月8日,当前的kotlin版本为'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
}
干杯
当您更新从android studio弹出的kotlin插件版本时,就会出现此问题,但是问题是Android Studio的当前版本无法动态更改位于项目级别Build.gradle文件中的kotlin gradle插件。
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.2.10"
}
如何解决这个问题?
因此,您需要手动更改此版本,您可以在此处找到
我在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
}
}
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
}
}
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
}
}
有点烦人,但工作室有时会喜欢。以下步骤可以解决此问题。
去
设置->构建,执行,开发-> Gradle->使用默认的Gradle包装器(推荐)
将其更改为“使用本地”,然后再更改为“使用默认值”。在关闭设置窗口后,Studio会询问有关更新gradle的信息。
我的Android Studio从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
}
}