目前,我有一个项目正在我们的工件中部署工件。对于该项目,一切都设置得很完美,并且可以正常工作。
我只是想知道是否有可能在gradle中全局设置整个工件配置,这样我就不必为每个项目编写工件{...}了。
答案 0 :(得分:0)
您只需编写自己的 Gradle插件即可:
artifactory
扩展属性提供默认值,例如contextUrl
,repoKey
,凭据等... 然后,您的不同项目将只需要应用自定义插件,并仅提供特定于项目的配置(例如,将以publishing
扩展名发布的人工制品的配置)
编辑,还有其他方法可以实现,但这取决于您所说的“全局gradle”:
EDIT2 如果您只想设置同一多项目构建的不同子项目的 artifactory插件配置,那么最简单的解决方案是定义此配置根项目构建脚本的subprojects
块中的配置:
subprojects {
apply plugin: "com.jfrog.artifactory"
artifactory {
publish {
contextUrl = '<repo url>'
repository {
repoKey = "<repo name>"
username = "user"
password = "pass"
}
}
}
}
答案 1 :(得分:0)
您可以维护一个文件,例如build_dependency.gradle并为所有项目定义任务
allprojects
{
//task common for all the project
}
subprojects
{
//task for subprojects
}
或在依赖文件中指定项目类型,例如ext.warProject = 1
并在build_dependency.gradle中将其引用为
if(project.hasProperty('warProject '))
{
//task here
}
并像apply from: "$rootDir/path_to_file/build_dependency.gradle"
一样在build.gradle中使用此文件
“ $ rootDir / path_to_dependenccy_file”`