我正在制作一个私有的 Kotlin 多平台库,该库将位于 Bitbucket 上托管的私有仓库中。
我的库依赖于另一个库,称为 Krypto。
因此,自然地,我在库的公共模块中有以下依赖项:
val commonMain by getting {
dependencies {
api("com.soywiz.korlibs.krypto:krypto:2.2.0")
}
}
现在,当我通过 Cocoapods 将库导入 iOS 项目时,它工作得非常好。但是,当我将 .jar 文件作为依赖项插入到我的 Android 项目中时:
implementation files('libs/MyLibrary-jvm-1.0.0.jar')
它可以编译,但在运行时崩溃并出现以下错误:
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/soywiz/krypto/SHA256Kt
如果我将 Krypto 依赖项添加到我的 Android 项目中,一切正常,但是我希望这些依赖项已经包含在我的库中。怎么做?
我还尝试添加 java-library 插件并在 java 构建块中添加依赖项,但它没有改变任何东西。