在 kotlin 多平台项目中找不到通用 jar
Cant find the common jar on kotlin multi-platform project
我由自己的多平台项目创建,我有 jvm
和 ios
的实现。一旦我构建了项目,它就生成了 5 个 jars
- 姓名-jvm.jar
- 名称-jvm-sources.jar
- 姓名-ios-sources.jar
- 姓名-metadata.jar
- 名称-元数据-sources.jar
其中 Name
是我的项目名称。但是我无法获得 Name-common.jar
。因此,当我将其发布到 bintray 时,我找不到 Name-common.jar
through pom.xml 存在。
我对多平台构建的理解有什么问题
kotlin 多平台发布模块中的默认工件名称如下。
如果您的项目名为 name
,它将针对每个目标发布以下内容
- 普通 ->
name-metadata.jar
- JVM ->
name-jvm.jar
- JS ->
name-js.jar
(里面有 name.js)
- Android->
name-android.jar
(对于发布构建类型)or/and name-android-debug.jar
(对于调试)
我不是 kotlin/native 用户,但我相信 ios 会有这样的东西
- ios ->
name-ios.klib
e.t.c
因此,对于您的问题,您可以通过 name-metadata.jar
或 gradle、com.group.name:name-metadata:${version}
访问您的模块
如果你打算在另一个多平台项目中使用它,你可以一直输入项目名称(即 com.group.name:name:${version}
)。 Gradle 元数据会将其解析为各自的目标
我由自己的多平台项目创建,我有 jvm
和 ios
的实现。一旦我构建了项目,它就生成了 5 个 jars
- 姓名-jvm.jar
- 名称-jvm-sources.jar
- 姓名-ios-sources.jar
- 姓名-metadata.jar
- 名称-元数据-sources.jar
其中 Name
是我的项目名称。但是我无法获得 Name-common.jar
。因此,当我将其发布到 bintray 时,我找不到 Name-common.jar
through pom.xml 存在。
我对多平台构建的理解有什么问题
kotlin 多平台发布模块中的默认工件名称如下。
如果您的项目名为 name
,它将针对每个目标发布以下内容
- 普通 ->
name-metadata.jar
- JVM ->
name-jvm.jar
- JS ->
name-js.jar
(里面有 name.js) - Android->
name-android.jar
(对于发布构建类型)or/andname-android-debug.jar
(对于调试)
我不是 kotlin/native 用户,但我相信 ios 会有这样的东西
- ios ->
name-ios.klib
e.t.c
因此,对于您的问题,您可以通过 name-metadata.jar
或 gradle、com.group.name:name-metadata:${version}
如果你打算在另一个多平台项目中使用它,你可以一直输入项目名称(即 com.group.name:name:${version}
)。 Gradle 元数据会将其解析为各自的目标