依赖管理插件 1.0.0.RC1

发行版 | Andy Wilkinson | 2016年12月16日 | ...

我很高兴地宣布,依赖管理插件 的 1.0.0.RC1 版本已经发布。它可从 Gradle 插件门户 以及 Maven Central 和 Bintray 获取。

新增功能?

该插件已使用 Java 重写,其 API 也已正式化。已引入该 API 与插件内部结构之间的明确分离。这需要一些重大更改,但如果您使用的是 Groovy DSL,则不太可能受到影响。

转换为 Java 并正式化 API 也带来了一些增强功能

### 正式支持 Gradle 3

以前,该插件是用 Groovy 编写的,并试图支持 Gradle 1、2 和 3。这 被证明过于雄心勃勃。两个主要问题是三个不同的 Groovy 运行时 (1.8、2.3 和 2.4) 之间的二进制不兼容性以及 Gradle 的三个版本之间的重大更改。为了解决这些问题,Gradle 团队建议使用 Java 重写该插件,并放弃对 Gradle 1.x 的支持。此版本正是这样做的,插件的主要代码现在是 100% Java,Gradle 2.9 现在是最小支持版本。因此,Gradle 3.x 现在已正式支持,将来应该更容易支持 Gradle 的新版本。一个受欢迎的副作用是插件 jar 文件的大小减少了 13%。

更好的 Gradle Script Kotlin 支持

以前,插件的 API 很大程度上受到它是用 Groovy 编写的这一事实的影响,其 API 和 DSL 非常以 Groovy 为中心。例如,在许多地方都使用了 Groovy Closure,而没有提供非 Groovy 的替代方案。这需要 Kotlin 脚本将函数适配到 closure,例如

configure<DependencyManagementExtension> {
    imports(delegateClosureOf<ImportsHandler> {
        mavenBom("io.spring.platform:platform-bom:Athens-SR1")
    })
}

转换为 Java 突出了这个问题,并以 Gradle 自身 API 为例,1.0 版本重载了许多以前仅采用 Groovy Closure 的方法,也采用 Gradle Action。重载的方法允许您稍微整理一下事情,例如

configure<DependencyManagementExtension> {
    imports {
        it.mavenBom("io.spring.platform:platform-bom:Athens-SR1")
    }
}

下一步是什么?

随着 API 的正式化和插件接近 1.0 版本,现在是尝试一下并让我们知道您在 GitHubGitter 上发现的任何问题或您想看到的改进的好时机。

感谢您迄今为止为插件提供的宝贵反馈和建议。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获得支持

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

了解更多

即将举行的活动

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

查看全部