Dependency Management Plugin 1.0.0.RC1

發布 | Andy Wilkinson | 2016 年 12 月 16 日 | ...

我很榮幸地宣布 Dependency Management Plugin 的 1.0.0.RC1 版本已經發布。它可以從 Gradle 的 Plugin Portal 以及 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 社群中所有即將舉行的活動。

檢視全部