【发布时间】:2021-06-22 07:57:46
【问题描述】:
我在 Kotlin 中构建了一个库,我想在 Kotlin 后端、Android 应用程序和 swift ios 应用程序中使用它。 Lib 是用普通的 Kotlin 编写的,它由 3 个相互依赖的模块组成。为了创建它的多平台/ios 版本,我使用 build.gradle.kts 创建了单独的模块:
plugins {
kotlin("multiplatform")
}
kotlin {
sourceSets {
val commonMain by getting {
dependencies {
implementation("org.jetbrains.kotlin:kotlin-stdlib-common")
implementation(project(":myJvmModule"))
}
}
}
iosArm64 { binaries.framework("NativeFramework") }
iosX64 { binaries.framework("NativeFramework") }
tasks {
...
}
}
tasks.withType<Wrapper> {
gradleVersion = "5.3.1"
distributionType = Wrapper.DistributionType.ALL
}
除此之外,myJvmModule 还有 build.gradle.kts:
val fasterXmlVersion: String by project
plugins {
kotlin("jvm")
}
dependencies {
// Modules
implementation(project(":myAnotherModule"))
implementation(project(":myAnotherModule2"))
// Jackson
implementation(group = "com.fasterxml.jackson.module", name = "jackson-module-kotlin", version = fasterXmlVersion)
}
无论我如何尝试使用 myJvmModule 作为依赖项,我总是收到错误:
Could not resolve company:myJvmModule:0.0.1
如何将 JVM 模块导入多平台模块?
【问题讨论】: