将发布配置移动到 gradle 中的一个位置
Move publishing configuration to one place in gradle
我有一个包含模块的项目,我的目标是在构建每个模块和构建所有模块后配置发布,这样我就可以创建一个包含所有 jar 的 zip 文件并上传它。我在 subprojects
部分和外部部分进行。
publishing {
publications {
mavenJava(MavenPublication) {
//my artifacts here
}
}
repositories {
maven {
url "${artifactoryURL}"
credentials {
username = "${artifactoryUsername}"
password = "${artifactoryPassword}"
}
}
}
}
有没有办法将 repositories
配置移动到一个地方,这样我就可以避免重复配置?
我猜您是在没有任何来源的顶级(根、父)项目中创建可部署项。
Is there a way to move repositories configuration to one place, so I could avoid duplication of this configuration?
当然可以。就用subprojects
, allprojects
or generic configure
,看你的需要:
allprojects {
id 'maven-publish'
publishing {
repositories {
maven {
url "http://maven.repo"
}
}
}
}
这将为所有项目配置发布(请注意,您可能不想发布所有内容)。
对于具有 Java 源的项目,您可以像往常一样配置发布:
subprojects {
publishing {
publications {
main(MavenPublication) {
from components.java
artifact sourcesJar
artifact javadocJar
}
}
}
}
对于根项目,只需像 中那样配置部署即可。
我有一个包含模块的项目,我的目标是在构建每个模块和构建所有模块后配置发布,这样我就可以创建一个包含所有 jar 的 zip 文件并上传它。我在 subprojects
部分和外部部分进行。
publishing {
publications {
mavenJava(MavenPublication) {
//my artifacts here
}
}
repositories {
maven {
url "${artifactoryURL}"
credentials {
username = "${artifactoryUsername}"
password = "${artifactoryPassword}"
}
}
}
}
有没有办法将 repositories
配置移动到一个地方,这样我就可以避免重复配置?
我猜您是在没有任何来源的顶级(根、父)项目中创建可部署项。
Is there a way to move repositories configuration to one place, so I could avoid duplication of this configuration?
当然可以。就用subprojects
, allprojects
or generic configure
,看你的需要:
allprojects {
id 'maven-publish'
publishing {
repositories {
maven {
url "http://maven.repo"
}
}
}
}
这将为所有项目配置发布(请注意,您可能不想发布所有内容)。
对于具有 Java 源的项目,您可以像往常一样配置发布:
subprojects {
publishing {
publications {
main(MavenPublication) {
from components.java
artifact sourcesJar
artifact javadocJar
}
}
}
}
对于根项目,只需像