Я создаю пользовательский плагин gradle, и одна из моих задач должна быть уверена, что другой плагин применяется к тому же проекту. Потому что он будет работать поверх него. Я хочу, чтобы пользователи моего плагина не настраивали явную зависимость от другого плагина - я хочу сделать это внутри своего плагина.Gradle: добавить зависимость плагина от другого плагина
Итак, я хочу использовать этот плагин (https://plugins.gradle.org/plugin/org.hidetake.ssh). Это моя зависимость.
Способ создания плагина - я просто создаю код класса на groovy, поместите его в buildSrc \ src \ main \ groovy и примените плавный плагин в проекте. Таким образом, мой настраиваемый плагин виден градиенту на этапе сборки. Он работает, у меня есть несколько других плагинов, сделанных таким образом для того же проекта, поэтому на данный момент это нормально.
Я просмотрел другие темы и google по тому же вопросу, но я не могу сделать эту работу для меня. Это, как я применяю код:
void apply(Project project) {
project.buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "org.hidetake:gradle-ssh-plugin:1.1.3"
}
}
project.apply plugin: "org.hidetake.ssh"
...
Сообщение об ошибке я получил: плагин с идентификатором «org.hidetake.ssh» не найден. Я попытался сделать это с помощью gradle api, также используя project.repositories.mavenCentral() и project.dependencies.add и project.apply (плагин: 'org.hidetake.ssh'), тогда - тоже не работает - такое же сообщение об ошибке , Пытался использовать длинную нотацию в project.dependencies.add («myConfig», [group: 'org.hidetake', имя: 'gradle-ssh-plugin', версия: '1.1.3']) - нет результата.
Цените, если кто-то может руководствоваться правильным синтаксисом \ способ заставить его работать.
Это прекрасно работает. Я использую его для применения «com.github.ben-manes: gradle-versions-plugin: 0.17.0» для всех моих проектов (все они используют общий базовый плагин для других зависимостей и задач) для автоматической проверки обновлений зависимостей , Большое спасибо! –