配置测试固件以供发布

虽然发布测试固件不要求对发布内容进行任何特定配置,但用于处理固件的功能机制需要进行额外配置。

对于坐标为 groupId:artifactId:version 的给定工件,Gradle 希望测试固件工件能够声明坐标为 groupId:artifactId-test-fixtures:version 的功能。测试固件支持功能或 Maven Publish 插件目前均无法自动完成上述设置,因此必须手动完成。

Gradle 会根据项目名称、群组和版本创建相应功能。这 3 个元素必须全部设为与发布内容中设置的 artifactIdgroupIdversion 相匹配。

默认情况下,项目名称是其路径的最后一段,因此路径为 :path:to:mylibrary 的项目的默认名称为 mylibrary。如果您不想为 artifactId 使用该名称,则需要更改项目名称。

您可以通过以下两种方式重命名项目:

  • 重命名项目的文件夹。此操作会更改项目名称或项目的 Gradle 路径,因此该项目的所有依赖项都需要更新。虽然让项目名称与文件夹保持一致可能会在初始阶段要求您在重组方面投入更多精力,但这样可以减少混淆。
  • 在 Gradle 中重命名项目,而不重命名项目文件夹。这样可以避免对源代码版本控制产生影响,但会抹除项目的位置和名称之间的关联。

如需在 Gradle 中重命名项目,请在 settings.gradle 文件中插入以下代码:

Groovy

include ':path:to:mylibrary'
project(':path:to:mylibrary').name = 'my-library'

Kotlin

include(":path:to:mylibrary")
project(":path:to:mylibrary").name = "my-library"

此代码会将项目的新路径分配到 :path:to:my-library

groupId 默认为 build 名称(通常是根文件夹的名称),而值 version 则默认为未指定。如需更改群组 ID 或版本的值,请在项目级 build.gradle 文件(适用于 Groovy)或 build.gradle.kts(适用于 Kotlin 脚本)中分别设置 groupversion 属性:

Groovy

group = 'com.my-company'
version = '1.0'

Kotlin

group = "com.my-company"
version = "1.0"