Плагин с идентификатором org.springframework.boot не найден - PullRequest
0 голосов
/ 13 марта 2019

Я бы хотел включить плагин весенней загрузки в свой проект, используя gradle 5.2.Ниже приведено текущее состояние моего build.gradle, за которым следуют вещи, которые я пытался сделать.В настоящее время я пытаюсь использовать поддержку спецификации Gradle 5 , но это не является жестким требованием.Я просто хочу знать, как решить ошибку

плагин с идентификатором 'org.springframework / boot' не найден

ОБНОВЛЕНИЕ: Обновленоструктура ниже, чтобы лучше представить мой вариант использования.

build.gradle

apply from: 'boot.gradle'

boot.gradle

repositories {
    mavenCentral()
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

dependencies {
    implementation platform('org.springframework.boot:spring-boot-dependencies:2.0.0.RELEASE')

    implementation group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '2.0.0.RELEASE'
    implementation group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: '2.0.0.RELEASE'

    implementation group: 'org.springframework.boot', name: 'spring-boot-gradle-plugin', version: '2.0.0.RELEASE'
}

Чтобы воссоздать мою ошибку, вам нужен только один файл в вашем проекте:

Application.java

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

Я попытался реализовать найденное решение here , основанный на

Во внешних скриптах (мы называем их плагинами скриптов) идентификаторы плагинов использовать нельзя.Вместо этого должно использоваться полное имя класса.Это известная ошибка.

и здесь , которая не работает для меня, даже если я перейду на использование весны 2.0.5.

как и другие аналогичные решения.

Ответы [ 2 ]

2 голосов
/ 13 марта 2019

Вы можете попробовать использовать управление зависимостями спецификации пружины, как показано ниже:

plugins {
    id 'org.springframework.boot' version '2.1.3.RELEASE'
    id 'java'
}

apply plugin: 'io.spring.dependency-management'

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
0 голосов
/ 14 марта 2019

Это решение для моего варианта использования основано на ответе Абдельгани.

build.gradle

plugins {
    id 'org.springframework.boot' version '2.1.3.RELEASE'
    id 'java'
}

apply from: 'boot.gradle'

boot.gradle

repositories {
    mavenCentral()
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'

dependencies {
    implementation platform('org.springframework.boot:spring-boot-dependencies:2.0.0.RELEASE')

    implementation group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '2.0.0.RELEASE'
    implementation group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: '2.0.0.RELEASE'

    implementation group: 'org.springframework.boot', name: 'spring-boot-gradle-plugin', version: '2.0.0.RELEASE'
}

Короче говоря, для сборки сценария необходимо, чтобы в качестве плагина был доступен org.springframework.boot, чтобы apply plugin: 'org.springframework.boot' мог работать в другом месте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...