Spring Boot 新的 Gradle 插件

工程 | Andy Wilkinson | 2017年4月5日 | ...

Spring Boot 2.0 M1 的主要主题之一是对其 Gradle 插件进行了一系列重大改进,其中包含许多显著的改进。许多改进刚刚合并,并可在最新的 Spring Boot 快照中使用。Spring Boot 2.0.0.M1 将于五月初发布,在此之前,我们非常乐意听到您对新插件的早期反馈。

您可以在其参考API文档中阅读有关插件功能的更多信息。

尝试新插件

新插件需要 Gradle 3.4 或更高版本。与 Spring Boot 的其余部分一样,快照发布到https://repo.spring.io/libs-snapshot。使用快照最简单的方法是在start.spring.io 上创建一个新的 Gradle 项目并选择 Spring Boot 2.0 快照。

或者,您的build.gradle应如下所示

buildscript {
    ext {
        springBootVersion = '2.0.0.BUILD-SNAPSHOT'
    }
    repositories {
        mavenCentral()
        maven { url 'https://repo.spring.io/libs-snapshot' }
    }
    dependencies {
        classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
    }
}

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

构建可执行 jar 和 war 文件

bootRepackage任务已被替换为bootJarbootWar任务,分别用于构建可执行 jar 和 war 文件。这两个任务都扩展了它们等效的标准 Gradle jar 或 war 任务,使您可以访问所有常用的配置选项和行为。

依赖管理

Spring Boot 的 Gradle 插件不再自动应用依赖管理插件。相反,Spring Boot 的插件现在会对应用的依赖管理插件作出反应,方法是导入正确版本的spring-boot-dependencies bom。这使您可以更好地控制如何以及何时配置依赖项管理。对于大多数应用程序,应用依赖项管理插件就足够了。

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

请注意,依赖管理插件仍然是spring-boot-gradle-plugin的传递依赖项,因此无需将其列为buildscript配置中的classpath依赖项。

提供反馈

如上所述,Spring Boot 2.0.0.M1 发布还有几周时间,因此现在是尝试新插件并让我们知道您的想法的绝佳机会。

该插件仍在开发中。新版本实现了许多旧版本无法实现的功能。此外,一些以前可能实现的功能现在可能不再可能,或者可能需要不同的方法。特别是,插件的 DSL 已经被有意简化,只涵盖我们确信想要的功能。

如果您想讨论新功能,请在下面的评论中或在 Gitter 上进行讨论。如果您发现错误或有进一步改进的想法,请在 GitHub 上创建一个问题

获取 Spring 电子简讯

随时关注 Spring 电子简讯

订阅

领先一步

VMware 提供培训和认证,以加速您的进步。

了解更多

获取支持

Tanzu Spring在一个简单的订阅中提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部