Я использую Gradle SSH Plugin для развертывания некоторых, но не всех подпроектов на двух разных удаленных машинах. Я хочу, чтобы настроить эти пультов в главном скрипте сборки, чтобы избежать дублирования, но не может применить плагин в соответствии с этим:Примените внешний плагин к подмножеству подпроектов
configure([
project(':Subproject1'), project(':Subproject5'), project(':Subproject7')
])
{
buildscript {
dependencies {
classpath 'org.hidetake:gradle-ssh-plugin:2.4.2'
}
}
apply plugin: "org.hidetake.ssh"
ssh.settings {
user = getProperty('ssh.username')
identity = file(getProperty('ssh.identity'))
knownHosts = allowAnyHosts
}
remotes {
tomcat {
host = getProperty('ssh.hosts.tomcat')
}
jboss {
host = getProperty('ssh.hosts.jboss')
}
}
}
Gradle терпит неудачу с > Plugin with id 'org.hidetake.ssh' not found
.
Все в порядке, если содержимое проекта закрыто для каждого проекта. Как я могу изящно решить эту проблему?
Да, это работает, но добавление блока 'buildscript' в начало корневого файла требует от меня также объявления репозиториев - что я делаю через' allprojects', а затем игнорируется. – Jazzschmidt
Что бы это ни стоило, вот древняя тема, где я задал более или менее этот вопрос на форумах по градле. Чтение потока может быть информативным: [can-we-provision-a-more-concise-of-of-centralization-repository-configurations] (https://discuss.gradle.org/t/could-we-provide -a-more-concise-way-of-centralizing-repository-configurations/563) –
К сожалению, я заканчиваю в 'Невозможно изменить зависимости конфигурации ': classpath' после того, как он был разрешен.' строка 12. на самом деле - да, old - gradle 2.14. AHHHH Мне пришлось удалить «buildscript.dependencies DependencyConfigurator» из rootProject и allprojects ... теперь он работает –