使用gradle创建针对所有本机目标的Kotlin多平台库
正如标题所示。我正在尝试创建一个Kotlin多平台库,该库针对所有本地目标。目前,我可以创建一个针对特定平台的库,例如使用gradle创建针对所有本机目标的Kotlin多平台库,kotlin,kotlin-multiplatform,kotlin-native,Kotlin,Kotlin Multiplatform,Kotlin Native,正如标题所示。我正在尝试创建一个Kotlin多平台库,该库针对所有本地目标。目前,我可以创建一个针对特定平台的库,例如ios,wasm,mingw,raspberrypi,等等 我知道这是可能的,因为有些Jetbrains库正是这样做的。例如,kotlinx.serialization有一个本机目标,可按如下方式实现: implementation "org.jetbrains.kotlinx:kotlinx-serialization-runtime-native:$serialization
ios
,wasm
,mingw
,raspberrypi
,等等
我知道这是可能的,因为有些Jetbrains库正是这样做的。例如,kotlinx.serialization
有一个本机目标,可按如下方式实现:
implementation "org.jetbrains.kotlinx:kotlinx-serialization-runtime-native:$serialization_version"
此外,还可以像这样使用ktor clientnativelibs:
implementation "io.ktor:ktor-client-auth-native:$ktor_version"
那么,如何定位所有本机目标,而不是特定的本机目标呢?我如何配置Gradle,使其生成一个可用于所有本机目标的本机目标?我想你说的是类似于@ArtyomDegtyarev的东西,它仍然以特定库为目标。我想编写一个以所有本机targets为目标的库请纠正我的错误,但我认为您希望以与序列化相同的方式创建库<代码>此出版物不包含任何工件,仅引用其他出版物作为其变体。这完全是一样的。看起来您没有错,@ArtyomDegtyarev我不完全理解kotlinlang网站所说的
是什么意思出版物不包括任何工件,只引用其他出版物作为其变体,你介意进一步解释吗?如果可能的话,展示一个多平台库的minimal build.gradle示例?关于这种方法的示例-很难找到不那么复杂的东西。考虑一下你提到的甚至序列化(我知道,这不是一件容易的事)。这里的想法听起来是这样的:当您将kotlinMultiplatform
添加到出版物列表时,它应该会生成一个伞形工件,其中不包含代码,而是引用其他已发布工件。这意味着您应该分别为所有工件生成库,但会有一个额外的库,从而更容易使用库。你的剧本现在看起来怎么样?