【发布时间】:2020-02-03 13:40:39
【问题描述】:
我在 build.gradle 配置中遇到了一些神奇的行为。 我正在尝试为带有子项目的项目启用 artifactoryPublish。 我有以下结构 根 --subproj1 --subproj2 --常见
gradle 版本 6.0.1
案例一
在根级别上,我构建了包含以下部分的 gradle 文件
subprojects {
apply from: "$rootDir/gradle/artifactory.gradle"
}
在 artifactory.gradle 中
apply plugin: 'com.jfrog.artifactory'
apply plugin: 'maven-publish'
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
}
}
artifactory {
contextUrl = artifactoryUrl
publish {
repository {
repoKey = 'mvn-snapshot-local'
password = artifactoryPassword
username = artifactoryUser
}
defaults {
publications('mavenJava')
publishArtifacts = true
publishPom = true
}
}
}
当我运行 artifactoryPublish 时它成功完成但什么也没发布
案例 2
当我像这样将发布部分从文件移动到顶层时
subprojects {
apply from: "$rootDir/gradle/artifactory.gradle"
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
}
}
}
一切正常,构建成功并发布。
问题
这两种配置有什么区别,为什么它在第一种情况下不起作用? 如果我将所有与出版相关的部分放在一个地方而不是不同的地方,我认为看起来会更准确,但由于某种原因我不能。
【问题讨论】:
标签: java gradle artifactory publishing maven-publish