如何跳过除 Android 以外的所有目标,用于多平台 Kotlin 库发布到 maven?



我正在使用maven-publish将我的多平台库发布到maven存储库。我的发布配置如下所示:

project.afterEvaluate {
publishing {
publications {
create<MavenPublication>("maven") {
groupId = projectGroup
artifactId = projectArtifactName
version = "${android.defaultConfig.versionName}"
tasks.getByName("bundle${buildType.capitalize()}Aar").outputs.files.forEach {
artifact(it)
}
}
}
repositories {
mavenLocal()
}
}
}

作为发布的结果,我得到了几个模块:

└── repository
└── com
└── example
├── lib-ios
│   ├── 1.0.0
├── lib-iossim
│   ├── 1.0.0
├── lib-macos
│   ├── 1.0.0
├── lib-metadata
│   ├── 1.0.0
└── lib
├── 1.0.0

之后,我在Android应用程序中使用此库作为:

dependencies {
implementation("com.example:lib:1.0.0")
}

所以看起来我只需要发布到我的库中mavenAndroid 部分,因为我使用carthage来发布 iOS 部分。

如何跳过除 Android 以外的所有目标,用于多平台 Kotlin 库发布到 maven?

检查您的成绩> lib>发布任务。应该有:

  1. Publish[module_name]PublicationToMavenLocal

  2. Publish[module_name]PublicationToMavenRepository

这应该只发布库的Android部分。

最新更新