Per*_*lam 6 java android gradle kotlin koin
我正在使用两个库,它们依赖于两个不同版本的 Koin。
其中一个库具有org.koin:koin-android:2.0.1 依赖项,另一个库具有io.insert-koin:koin-core-jvm:3.0.1依赖项。
在编译时,我收到了大量的重复类错误,如下所示,
Duplicate class org.koin.android.BuildConfig found in modules jetified-koin-android-2.0.1-runtime (org.koin:koin-android:2.0.1) and jetified-koin-android-3.0.1-runtime (io.insert-koin:koin-android:3.0.1)
Duplicate class org.koin.android.ext.koin.KoinExtKt$androidContext$1 found in modules jetified-koin-android-2.0.1-runtime (org.koin:koin-android:2.0.1) and jetified-koin-android-3.0.1-runtime (io.insert-koin:koin-android:3.0.1)
Duplicate class org.koin.core.scope.Scope$injectOrNull$1 found in modules jetified-koin-core-2.0.1 (org.koin:koin-core:2.0.1) and jetified-koin-core-jvm-3.0.1 (io.insert-koin:koin-core-jvm:3.0.1)
Duplicate class org.koin.java.KoinJavaComponent$inject$1 found in modules jetified-koin-core-jvm-3.0.1 (io.insert-koin:koin-core-jvm:3.0.1) and jetified-koin-java-2.0.1 (org.koin:koin-java:2.0.1)
...
Run Code Online (Sandbox Code Playgroud)
当我尝试排除其中之一时,如下所示,
configurations {
all {
exclude group: "io.insert-koin", module: "koin-android"
exclude group: "io.insert-koin", module: "koin-core-jvm"
}
}
Run Code Online (Sandbox Code Playgroud)
我在相关的运行时遇到了 NoClassDefFoundError 。
当排除org.koin:koin-android:2.0.1时
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.koin.core.KoinComponent" on path: DexPathList[[zip file "/data/app/...
Run Code Online (Sandbox Code Playgroud)
当排除io.insert-koin:koin-core-jvm:3.0.1时
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.koin.core.component.KoinComponent" on path: DexPathList[[zip file "/data/app/...
Run Code Online (Sandbox Code Playgroud)
我怎样才能使用这两个库?
小智 4
Koin 3.xx 没有向后兼容性。如果使用 Koin 2.xx 版本的 sdk 没有更新,也许您应该更好地为相反的库找到一个旧版本,该库使用 Koin 2.xx 但请注意 Koin 版本 2.2.3 也有一个不同的路径其他(由于jcenter限制)
| 归档时间: |
|
| 查看次数: |
3535 次 |
| 最近记录: |