我需要使用gradle为某些项目指定本地发布,但不是全部。
与init.gradle中的allprojects
类似,类似于
allprojects {
apply plugin: 'maven-publish'
publishing {
repositories {
maven {
url 'http://nexus.myintranet.local/content/repositories/snapshots'
credentials {
username 'myusername'
password 'mypassword'
}
}
}
}
}
假设我有/home/ed/xthirdparty
和/home/ed/ythirdparty
。如何将此配置仅应用于这两个项目而不编辑其build.gradle文件?我唯一可以使用-I
或--init-script
吗?或者我可以使用像allprojects
这样的方法来区分项目的路径或其他属性吗?
答案 0 :(得分:1)
根据Peter Niederwieser的上述评论,我能够根据他们在机器上的位置为某些项目指定替代发布:
allprojects {
def thirdparty = [ '/home/ed/xthirdparty', '/home/ed/ythirdparty' ]
if (rootDir.path in thirdparty) {
apply plugin: 'maven-publish'
publishing {
repositories {
maven {
url 'http://nexus.myintranet.local/content/repositories/snapshots'
credentials {
username 'myusername'
password 'mypassword'
}
}
}
}
}
}