我有一个包含多个子项目的gradle项目。子项目使用maven-publish插件发布一个或多个maven工件。我想将许可证和公司(可能还有其他)信息添加到工件的POM中。
我发现了如何做到这一点,就像这样:
publishing {
publications {
mySubprojectsPublication(MavenPublication) {
artifact subprojectsPackageTask
pom {
licenses {
license {
name = '...'
url = '...'
distribution = 'repo'
comments = '...'
}
}
organization {
name = 'My Organization'
url = 'https://www.MyOrgUrl.com'
}
}
}
}
字符串
对于多个子项目(每个子项目可能有多个发布),将pom { ... }
部分复制并粘贴到多个build.gradle
文件中的每个发布似乎不是最佳的,并且很难维护。
问:是否有办法为项目中的所有出版物指定此许可证?(所有出版物共享相同的许可证类型)
1条答案
按热度按时间t9eec4r01#
我自己找到了解决办法...
我将以下内容添加到root
build.gradle
:字符串
如果root
build.gradle
本身还没有使用maven-publish插件,那么您也需要添加它:型
model {}块是必需的,以便在配置项目的所有已配置发布后,将pom信息添加到这些发布中。