Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.15.
在Stripe中,我的客户想要电子邮件和持卡人姓名,但Stripe的支付用户界面在com.stripe.android.view.CardMultilineWidget
中没有提供这个选项。我想用最新的Stripe版本试一试。
我之前使用的是Stripe版本(14.1.1)。所以我把它更新到最新的版本(16.8.0)。
构建时向我显示了一个错误,即它不需要
minSdkVersion 19
。它需要21
在manifest merger
。所以我把minSdkVersion
更新为21
。我得到了
caches/transforms-2/files-2.1/4541b0189187e0017d23bbb0afebd16a/jetified-kotlin-stdlib-common-1.5.0.jar!/META-INF/kotlin-stdlib-common.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.15.
我试着改变了Gradle的版本,但我还是得到了同样的错误。我怎样才能解决不兼容的错误并在Stripe中添加电子邮件和持卡人姓名?
在文件build.gradle
中改变了这一点,解决了我的问题。
从
ext.kotlin_version = '1.3.50'
至
ext.kotlin_version = '1.6.0'
或者不管Kotlin的最新版本可用,并确保在Android Studio上也更新Kotlin的版本。
我在一个Flutter项目中遇到了这样的问题。
在我的案例中,Android build.gradle文件中缺少kotlin-gradle-plugin一行,所以添加ext.kotlin_version = '1.6.10'
并没有解决这个问题。
在添加了
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
错误已经消失了。
完整的代码部分。
buildscript {
ext.kotlin_version = '1.6.10'
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.1.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
首先,进入设置,然后导航到插件。找到Kotlin插件并更新它。
接下来,在gradle文件中,进入build.gradle(项目:YourApp)。然后,将以下代码(在buildcript中)从。
ext.kotlin_version = '1.3.50'
到最新的版本,如。
ext.kotlin_version = '1.4.32'
要知道最新版本,请进入设置和插件,找到Kotlin插件,并确保它已更新。最新的版本在JetBrains下。
按照说明进行操作后,你的错误将得到解决。
确保你的IDE的Kotlin版本与你的gradle.build文件中声明的版本相同。
通过更新Kotlin Gradle插件的版本,该问题已经得到了解决。
在项目级的build.gradle文件中,更新以下一行。
ext.kotlin_version = '1.6.10'
你可以在Tools / Build tools / Gradle找到最新的Kotlin Gradle插件的版本。
你需要什么来解决这个问题呢?
我从昨天晚上开始就面临这个问题。只是浏览了一些网页,但没有找到确切的解决方案。我终于通过这些步骤解决了这个问题。
- 在build.gradle文件中,用
ext.kotlin_version = '1.4.32'
替换ext.kotlin_version = '1.3.50'
。 - 清理项目 → 用Gradle文件构建项目 → 运行。
在我的案例中为
其元数据的二进制版本是1.7.1,预期版本是1.5.1。
在build.gradle(project)里面得到了(dependencies),从1.5.x
(x)转换,在我的例子中是(20)。
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.20"
到1.7.10
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.10"
另一个解决方案是将androidx.core:core-ktx
库降级到任何兼容版本。这个对kotlin_version = '1.3.31'
起作用。
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.3.1' // The only working for this version (sdk/gradle)
implementation 'androidx.core:core-ktx:1.0.2' // The only working for this version (sdk/gradle)
implementation 'androidx.constraintlayout:constraintlayout:1.1.2' // higher versions require min-sdk >= 26
...
}
Android SDK。compileSdkVersion 30
和minSdkVersion 19
。
Gradle构建工具。com.android.tools.build:gradle:3.3.1
.
只要进入文件build.gradle(项目:yourProjectName)就可以了。
变化
plugins {
...
id 'org.jetbrains.kotlin.android' version '1.5.x' apply false
...
}
(1.5.x指的是在你的情况下的x个版本号,例如1.5.1。)
拟在
plugins {
...
id 'org.jetbrains.kotlin.android' version '1.7.10' apply false
...
}
在我的情况下,它是有效的...
这里的大多数答案似乎都是围绕着使用Gradle的项目。
我在IntelliJ IDEA中随机遇到了这个问题,该项目在5分钟前还在正常编译和运行一个Maven项目--没有改变配置。我引入了一个新的异常类,这个问题突然出现了。
我试着让缓存失效并重新启动,这并没有解决这个问题--然而,禁用和重新启用Kotlin插件却解决了这个问题。
将项目构建的gradle改为
buildscript {
ext.kotlin_version = '1.7.20'
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.2.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
我在Flutter中遇到了同样的问题,我通过进入:文件>设置>插件,如@Muzzamil所说,我在IDE中检查了Kotlin的版本,并简单地将ext.kotlin_version中的值(即1.6.10)替换为该值,从而解决了这一问题。
ext.kotlin_version = '1.6.10'
使用Flutter,它是通过以下方式修复的。
更新Android Studio的软件包,特别是Kotlin插件。
从Gradle - Plugin and versions获取最新的Kotlin插件版本Nbr。目前,它是1.6.10。
更新<Your_project_name_folder>\android\build.gradle文件,用你从上面的网站上得到的新版本替换旧的Kotlin版本。
ext.kotlin_version = '<The_new_version_Nbr>'
在我的案例中ext.kotlin_version = '1.6.10'
。重新启动Visual Studio代码。
你已经完成了任务。
我在IntelliJ IDEA的一个Maven项目中遇到了这个错误。解决方案是,如果你的项目中没有使用Kotlin,那么就要在IntelliJ IDEA中关闭Kotlin插件。
请前往。
菜单 File → Settings → Plugins。
并通过点击复选框关闭Kotlin插件。请看这里。
我设置了Minsdk 24,并重新启动了Android Studio,它工作得很好。
项目的build.gradle。
ext.kotlin_version = '1.6.10'
应用程序/build.gradle:
dependencies {
// classpath 'com.android.tools.build:gradle:7.1.2'
// classpath "org.jetbrains.kotlin:kotlin-gradle- plugin:$kotlin_version"
}
但在改变ext.kotlin_version为低版本后,这个警告仍然存在,但红色的警告已经消失了。
在我的情况下,解决方案是。
更新Android Studio的软件包,特别是Kotlin插件。
从Gradle - Plugin and versions获取最后的Kotlin插件版本号。对我来说是1.6.10。 你可以在这里得到最后的版本。https://plugins.jetbrains.com/plugin/6954-kotlin
更新<Your_project_name_folder>/android/build.gradle文件,将旧的kotlin版本替换成你从上面的网站上得到的新版本。在我的例子中,ext.kotlin_version = '1.6.10' 。
更新文件<Your_project_name_folder>/android/gradle/wrapper/gradle-wapper.properties。
改变distributionUrl的版本,使之成为一个新版本。
来自https://services.gradle.org/distributions/gradle-5.6.2-all.zip
到https://services.gradle.org/distributions/gradle-6.9-all.zip