Gradle 5.0 更新介紹

Gradle 5.0正式版出來(lái)有幾天了市埋,這個(gè)工具的發(fā)展速度還真是驚人刻蚯。前些天我看到gradle 5 rc版的時(shí)候還在想正式版什么時(shí)候出,沒(méi)想到rc版沒(méi)過(guò)幾天正式版就出來(lái)了剩失。那么正好屈尼,就來(lái)介紹一下gradle 5.0正式版加入的一些新功能吧。

依賴版本對(duì)齊

項(xiàng)目中引用的第三方包多了拴孤,難免出現(xiàn)引入了同一個(gè)包的不同版本脾歧,導(dǎo)致沖突的情況發(fā)生。依賴版本對(duì)齊這個(gè)功能就是為了解決這種情況而出現(xiàn)的演熟。如果要對(duì)齊依賴版本鞭执,首先需要一個(gè)邏輯組(platform),platform規(guī)定了要使用的依賴版本芒粹,它可以是我們聲明的依賴版本兄纺,也可以是由其他地方導(dǎo)入的BOM文件。在遇到了不同版本的情況下是辕,都會(huì)對(duì)齊到platform中規(guī)定的版本上囤热。

下面是官方文檔的例子:

dependencies {
    // 導(dǎo)入了BOM文件, 會(huì)覆蓋其他地方聲明的版本
    implementation(enforcedPlatform("org.springframework.boot:spring-boot-dependencies:1.5.8.RELEASE"))

     // define dependencies without versions
    implementation("com.google.code.gson:gson")
    implementation("dom4j:dom4j")

     // 這里的版本會(huì)被對(duì)齊到BOM中聲明的版本
    implementation("org.codehaus.groovy:groovy:1.8.6")
}

Kotlin DSL 1.0

Gradle官方很早就開(kāi)始開(kāi)發(fā)基于Kotlin的DSL了获三,在Gradle 5.0中Kotlin DSL正式版終于現(xiàn)身了旁蔼,這意味著我們可以在生產(chǎn)項(xiàng)目中使用Kotlin DSL了。和默認(rèn)的Groovy DSL相比疙教,由于Kotlin DSL是靜態(tài)的棺聊,所以可以提供更多的代碼補(bǔ)全、提示贞谓、語(yǔ)法高亮等支持限佩。

如果想要使用Kotlin DSL,但是還是不太熟悉Kotlin DSL的語(yǔ)法也沒(méi)有關(guān)系裸弦,Gradle官方早就寫(xiě)了一大堆示例項(xiàng)目祟同,相信你看完以后肯定就了解如何使用了。連接在這里理疙。

Kotlin DSL

Gradle構(gòu)建初始化功能

gradle init任務(wù)現(xiàn)在增加了一些很實(shí)用的功能:

  • 交互模式晕城,初始化的時(shí)候可以在交互模式中輸入信息;
  • Kotlin類庫(kù)和程序窖贤,現(xiàn)在可以在初始化的時(shí)候生成Kotlin類庫(kù)和程序類型;
  • 用推薦的配置生成構(gòu)建砖顷,init任務(wù)現(xiàn)在會(huì)使用implementation贰锁、testImplementationtestRuntimeOnly配置來(lái)代替原來(lái)的compiletestCompiletestRuntime滤蝠。
  • 配置項(xiàng)目和代碼包名豌熄,現(xiàn)在init任務(wù)提供了參數(shù)來(lái)設(shè)置項(xiàng)目和源代碼的包名;
  • 創(chuàng)建資源文件夾物咳,現(xiàn)在init任務(wù)還會(huì)創(chuàng)建空的resource文件夾锣险;
  • 創(chuàng)建.gitignore文件。

可搜索的文檔

這個(gè)改進(jìn)屬于官方文檔的改進(jìn)览闰,現(xiàn)在官方文檔基于Algolia添加了搜索框囱持,可以搜索你想要的內(nèi)容。

可搜索的文檔

任務(wù)超時(shí)

現(xiàn)在任務(wù)可以指定一個(gè)超時(shí)值焕济,當(dāng)執(zhí)行時(shí)間超過(guò)的時(shí)候會(huì)停止。

解析依賴時(shí)的HTTP重試

現(xiàn)在當(dāng)Gradle通過(guò)HTTP訪問(wèn)遠(yuǎn)程倉(cāng)庫(kù)的時(shí)候盔几,如果失敗晴弃,會(huì)在拉黑這個(gè)倉(cāng)庫(kù)之前重試。

性能改進(jìn)

以低優(yōu)先級(jí)進(jìn)程方式啟動(dòng)

現(xiàn)在Gradle可以使用--priority low命令行參數(shù)或者org.gradle.priority=low屬性作為低優(yōu)先級(jí)進(jìn)程啟動(dòng)逊拍,這可以保證IDE和終端即使在繁重的任務(wù)時(shí)始終處于可響應(yīng)狀態(tài)上鞠。

還有一些性能改動(dòng),感興趣可以參考官方文檔卒茬。

Java 11支持

現(xiàn)在可以使用Java 11來(lái)運(yùn)行Gradle沿癞。

這個(gè)功能其實(shí)也挺重要的杯活,之前在升級(jí)到Java 11的時(shí)候我發(fā)現(xiàn)一些Gradle構(gòu)建失敗了,現(xiàn)在可以正常運(yùn)行它們了谴咸。

提升的功能

之前很多功能都處于測(cè)試和開(kāi)發(fā)狀態(tài),現(xiàn)在它們作為正式特性出現(xiàn)在Gradle中了骗露。官方文檔有一個(gè)很長(zhǎng)的列表岭佳,這里只簡(jiǎn)單列出一部分:

更新日志還有很多地方我沒(méi)有介紹,有興趣的可以查看官方文檔萧锉。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末珊随,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子柿隙,更是在濱河造成了極大的恐慌叶洞,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件禀崖,死亡現(xiàn)場(chǎng)離奇詭異衩辟,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)帆焕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)惭婿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)不恭,“玉大人,你說(shuō)我怎么就攤上這事财饥』话桑” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵钥星,是天一觀的道長(zhǎng)沾瓦。 經(jīng)常有香客問(wèn)我,道長(zhǎng)谦炒,這世上最難降的妖魔是什么贯莺? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮宁改,結(jié)果婚禮上缕探,老公的妹妹穿的比我還像新娘。我一直安慰自己还蹲,他們只是感情好爹耗,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著谜喊,像睡著了一般潭兽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上斗遏,一...
    開(kāi)封第一講書(shū)人閱讀 52,328評(píng)論 1 310
  • 那天山卦,我揣著相機(jī)與錄音,去河邊找鬼诵次。 笑死账蓉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的藻懒。 我是一名探鬼主播剔猿,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼嬉荆!你這毒婦竟也來(lái)了归敬?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤鄙早,失蹤者是張志新(化名)和其女友劉穎汪茧,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體限番,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡舱污,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了弥虐。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扩灯。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡媚赖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出珠插,到底是詐尸還是另有隱情惧磺,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布捻撑,位于F島的核電站磨隘,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏顾患。R本人自食惡果不足惜番捂,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望江解。 院中可真熱鬧设预,春花似錦、人聲如沸犁河。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)呼股。三九已至,卻和暖如春画恰,著一層夾襖步出監(jiān)牢的瞬間彭谁,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工允扇, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留缠局,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓考润,卻偏偏與公主長(zhǎng)得像狭园,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子糊治,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容