我收到以下警告,但我不确定v1.0.6所在的位置.
是否有可能这个错误来自Kotlin库,包括一个旧的Kotlin版本?
任何想法如何解决它或至少如何遵循建议使kotlin反映明确(1.1)?
Ale*_*lov 70
您的项目似乎是以依赖于kotlin-stdlib1.1和kotlin-reflect1.0 的方式配置的.最可能的情况是你已经有一个明确的依赖kotlin-stdlib1.1但没有依赖kotlin-reflect,而一些其他库(你依赖)取决于kotlin-reflect1.0.
如果确实如此,解决方案是提供对kotlin-reflect1.1 的明确依赖.
在Maven中,将其添加到pom.xml:
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<version>1.1.0</version>
</dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)
在Gradle中,将其添加到build.gradle:
dependencies {
implementation "org.jetbrains.kotlin:kotlin-reflect:1.1.0"
}
Run Code Online (Sandbox Code Playgroud)
在官方文档中查看有关此信息和相关警告的一些信息.
jeo*_*kim 25
首先,通过下面的gradle脚本找出原因
./gradlew app:dependencies
Run Code Online (Sandbox Code Playgroud)
(更改app为您的 gradle 模块名称)
+--- project :common
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.61
| | +--- org.jetbrains.kotlin:kotlin-stdlib-common:1.3.61
| | \--- org.jetbrains:annotations:13.0
| +--- org.jetbrains.kotlinx:kotlinx-coroutines-core-common:1.3.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib-common:1.3.61
| +--- org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:0.12.0 -> 0.14.0
| | \--- org.jetbrains.kotlin:kotlin-stdlib-common:1.3.60 -> 1.3.61
Run Code Online (Sandbox Code Playgroud)
然后,将显示依赖树。检查哪个依赖项使用问题依赖项。
如果找到依赖项,请决定如何解决它。
我不确定什么是最好的方法。请参考它。
Vla*_*lad 17
我通过覆盖我的应用程序中使用的kotlin版本来修复警告
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'org.jetbrains.kotlin' && requested.name == 'kotlin-reflect') {
details.useVersion kotlin_version
}
}
}
Run Code Online (Sandbox Code Playgroud)
例如 kotlin_version = 1.3.0
小智 8
当您在 kotlin 项目(android)中使用 dagger 并且您的 kotlin 版本为 1.7 时会发生这种情况,即
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
Run Code Online (Sandbox Code Playgroud)
您所要做的就是将下面的依赖项添加到您的应用程序构建 gradle 级别
implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.50"
Run Code Online (Sandbox Code Playgroud)
确保使用相同版本的stdlib-jdk7&kotlin-gradle-plugin依赖项以避免警告。
您可以参考下面的示例,其中stdlib-jdk7&kotlin-gradle-plugin两者具有相同的版本
应用程序级build.gradle文件
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.0"
...
}
Run Code Online (Sandbox Code Playgroud)
项目级build.gradle文件
buildscript {
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.0"
...
}
Run Code Online (Sandbox Code Playgroud)
}
替换这个
implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.4.30'
Run Code Online (Sandbox Code Playgroud)
和
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.30'
Run Code Online (Sandbox Code Playgroud)
库的版本应该与项目级别的插件版本相同
classpath org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27812 次 |
| 最近记录: |