Какой способ лучше использовать для gradle BOM и spring-boot (мультимодульное приложение) - PullRequest
0 голосов
/ 03 апреля 2019

Я использую Gradle для создания моего spring-boot приложения.Чего я хочу?

У меня есть мультимодульное приложение, где некоторые модули являются spring-boot приложениями.Я хочу получить BOM пружинные зависимости в файле Gradle родительского проекта и использовать все библиотеки без версий.

Теперь у меня есть следующие конфиги:

 buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        }
    }

apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

И я дублирую этот код в каждом модуле.Я прочитал Gradle документацию и вижу это:

Сам плагин больше не применяет плагин Spring Dependency Management больше автоматически.Вместо этого он реагирует на то, что подключаемый модуль Spring Dependency Management применяется и настраивается с помощью спецификации Spring-boot-зависимостей (спецификация. Более подробно о поддержке спецификации будет рассказано позже в этом посте.)

И вот пример ниже:

plugins {
    id 'java'
    id 'com.gradle.build-scan' version '1.16'
    id 'org.springframework.boot' version '2.0.5.RELEASE'
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-dependencies:2.0.5.RELEASE'
...

Я в замешательстве.Какой вариант лучше?Я пытаюсь изменить свой код, как эта документация, и я получаю ошибку:

> Could not resolve all files for configuration ':my-server:compileClasspath'.
   > Could not find org.springframework.boot:spring-boot-starter-data-jpa:.
     Required by:
         project :my-server
   > Could not find org.springframework.boot:spring-boot-starter-cache:.
     Required by:
         project :my-server
   > Could not find org.springframework.boot:spring-boot-configuration-processor:.
     Required by:
         project :my-server
   > Could not find org.hibernate:hibernate-jpamodelgen:.
     Required by:
         project :my-server
   > Could not find org.projectlombok:lombok:.
     Required by:
         project :my-server
   > Could not find org.springframework.kafka:spring-kafka:.
     Required by:
         project :my-server

1 Ответ

0 голосов
/ 03 апреля 2019

Вам все еще нужно определить repositories для ваших зависимостей.Добавьте строку ниже в свой build.gradle.

repositories {
    mavenCentral()
}
...