Кажется, что ваш проект настроен таким образом, что вы зависите от kotlin-stdlib
версий 1.1 и kotlin-reflect
1.0. Наиболее вероятный случай состоит в том, что у вас уже есть явная зависимость от kotlin-stdlib
1.1, но нет зависимости от нее kotlin-reflect
, а какая-то другая библиотека (от которой вы зависите) зависит от kotlin-reflect
1.0.
Если это действительно так, решение состоит в том, чтобы обеспечить явную зависимость от kotlin-reflect
1.1.
В Maven добавьте это в pom.xml
:
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<version>1.1.0</version>
</dependency>
</dependencies>
В Gradle добавьте это в build.gradle
:
dependencies {
implementation "org.jetbrains.kotlin:kotlin-reflect:1.1.0"
}
См. Некоторую информацию об этом и связанных с ним предупреждениях в официальных документах .
Я исправил предупреждение, перезаписав версию котлина, используемую в моем приложении
configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == 'org.jetbrains.kotlin' && requested.name == 'kotlin-reflect') { details.useVersion kotlin_version } } }
например
kotlin_version = 1.3.0
источник
android {}
например,во-первых, выясните причину с помощью скрипта gradle ниже
(измените имя
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
Затем будет показано дерево зависимостей. проверьте, какая зависимость использует зависимость задачи.
Если вы нашли зависимость, решите, как ее решить.
Я не уверен, что лучше. пожалуйста, просто обратитесь к нему.
источник
это происходит, когда вы используете кинжал в проекте kotlin (android), и у вас версия kotlin 1.7, т.е.
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
все, что вам нужно сделать, это добавить зависимость ниже к уровню градиента сборки вашего приложения
implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.50"
источник
Убедитесь, что вы используете ту же версию
stdlib-jdk7
&kotlin-gradle-plugin
dependencies, чтобы избежать предупреждений.Вы можете refere ниже примера , где
stdlib-jdk7
иkotlin-gradle-plugin
оба имеют ту же версиюdependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.0" ... }
buildscript { dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.0" ... }
}
источник