Как уже упоминалось @cjstehno, apply plugin
это устаревший метод, который вы должны избегать.
С введением плагинов DSL у пользователей не должно быть особых причин использовать устаревший метод применения плагинов. Это задокументировано здесь в случае, если автор сборки не может использовать плагины DSL из-за ограничений того, как он работает в настоящее время.
С новым plugins block
методом вы можете добавить плагин и контролировать, когда его применять, используя необязательный параметр apply
:
plugins {
id «plugin id» version «plugin version» [apply «false»]
}
Вы по-прежнему будете использовать устаревший метод в ситуациях, когда вы хотите применить уже добавленный, но не примененный плагин в своем plugins
блоке. Например, в мастер-проект плагин xyz
добавляется, но не применяется, и его следует применять только в подпроекте subPro
:
plugins {
id "xyz" version "1.0.0" apply false
}
subprojects { subproject ->
if (subproject.name == "subPro") {
apply plugin: 'xyz'
}
}
Обратите внимание, что вам больше не нужна версия. Версия требуется в plugins
блоке , если вы не используете один из модулей ядра Gradle, например java
, scala
...
Я потратил некоторое время, чтобы понять разницу, пытаясь создать Spring Boot
приложение, и поэтому я отвечаю на это снова через некоторое время. Следующий пример использования Spring Boot
плагина мне очень помог:
Что в настоящее время следует использовать:
plugins {
id "org.springframework.boot" version "2.0.1.RELEASE"
}
Что использовалось до Gradle 2.1:
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:2.0.1.RELEASE"
}
}
apply plugin: "org.springframework.boot"