2

我们使用 BOM 来共享 MyCompany 中的依赖管理。

它被定义为 Maven POM。这是一个最小的例子:

<?xml version="1.0" encoding="UTF-8"?>
<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.common</groupId>
  <artifactId>common-java</artifactId>
  <version>1.0.0</version>
  <packaging>pom</packaging>

  <properties>
    <spring-boot.version>2.4.0</spring-boot.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>${spring-boot.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>

</project>

然后从 Gradle 项目中使用它。

虽然这适用于代码依赖项,但我想从插件管理中找到一种使用它的方法。

现在,我们在 中定义settings.gradle.kts

pluginManagement {

    val springBootVersion: String by settings

    plugins {
        id("org.springframework.boot") version(springBootVersion)
    }
}

springBootVersion中定义的gradle.properties

这对我来说是个问题,因为 Spring 版本同时定义:

  • 在共享 BOM 中;
  • 在每个项目的插件管理中。

如何从 Gradle 的插件管理中访问该 BOM?如果我做不到,有什么好的不要重复自己的做法呢?

4

0 回答 0