gradle之gradlew最全指令攻略

??Gradle是一個(gè)構(gòu)建工具,它是用來幫助我們構(gòu)建app的,構(gòu)建包括編譯营密、打包等過程。我們可以為Gradle指定構(gòu)建規(guī)則目锭,然后它就會(huì)根據(jù)我們的“命令”自動(dòng)為我們構(gòu)建app评汰。Android Studio中默認(rèn)就使用Gradle來完成應(yīng)用的構(gòu)建,除此之外我們可以用gradle的指令選擇性的去構(gòu)建我們所需要的app侣集。用gradle的指令構(gòu)建app键俱,需要用到gradlew(即gradle wrapper的簡(jiǎn)寫)兰绣,本文對(duì)gradlew的常用指令做一個(gè)總結(jié)世分。

??gradlew與gradlew.bat: gradlew為L(zhǎng)inux下的shell腳本,gradlew.bat是Windows下的批處理文件缀辩。gradlew是gradle wrapper的縮寫臭埋,也就是說它對(duì)gradle的命令進(jìn)行了包裝,比如我們進(jìn)入到指定Module目錄并執(zhí)行“gradlew.bat assemble”即可完成對(duì)當(dāng)前Module的構(gòu)建(Windows系統(tǒng)下)臀玄。

??gradlew使用標(biāo)準(zhǔn)格式:gradlew [option...] [task...]
其中:option表示選項(xiàng)瓢阴,task表示任務(wù)。也可以用:gradlew [task...] [option...]健无,具體用哪種格式可以根據(jù)個(gè)人愛好決定荣恐。下面對(duì)gradlew的常用指令做一個(gè)說明:

  • gradlew -?/-h/--help:顯示幫助信息,即會(huì)打印可選參數(shù)及參數(shù)說明信息;
  • gradlew -v/--version:版本號(hào)(會(huì)打印工程用的Gradle的版本號(hào)叠穆、Kotlin少漆、Groovy、Ant硼被、JVM示损、OS等的版本號(hào));
  • gradlew tasks --all:查看所有任務(wù)嚷硫,包括緩存任務(wù)等检访;
  • gradlew clean:清除工程目錄下的build文件夾;
  • gradlew build: 檢查依賴并編譯打包仔掸,debug脆贵、release環(huán)境的包都會(huì)打出來;
  • gradlew assemble***:編譯指定的包:如Debug包(gradlew assembleDebug)起暮、Release包(gradlew assembleRelease)丹禀、渠道包(gradlew assembleOemRelease/assembleOemDebug)、定制的版本等等鞋怀;
  • gradlew install***:編譯并安裝指定的包:如Debug包(gradlew installDebug)双泪、Release包(gradlew installOemRelease/installOemDebug)、定制的版本等等密似;
  • gradlew uninstall**:卸載已安裝的指定模式的包:如Debug包(gradlew uninstallDebug)焙矛、Release包(gradlew uninstallRelease)、渠道包(gradlew uninstallOemRelease/uninstallOemDebug)残腌、定制的版本等等村斟;
  • gradlew :模塊名稱:dependencies,如gradlew :app:dependencies抛猫,作用:查看包依賴關(guān)系蟆盹;
  • gradlew build -i/--info -d/--debug -s/--stacktrace:編譯(build)并打印debug模式和info等級(jí)的日志及所用異常的堆棧信息(--stacktrace);
  • gradlew clean build --refresh-dependencies:組合指令闺金,清除構(gòu)建(gradlew clean)并重新構(gòu)建(gradlew build)逾滥,同時(shí)強(qiáng)制刷新依賴(gradlew --refresh-dependencies);
  • gradlew --offline:離線模式败匹,即讓Gradle只使用本地cache里的依賴寨昙,如果cache中沒有也不會(huì)更新依賴,而是提示編譯失斚颇丁舔哪;
  • gradlew --refresh-dependencies:強(qiáng)制刷新依賴,即檢查依賴是否有更新比如動(dòng)態(tài)版本槽棍、SHA1進(jìn)行本地cache和遠(yuǎn)程倉(cāng)庫(kù)散列碼的對(duì)比等捉蚤,有更新則下載更新進(jìn)行構(gòu)建抬驴;使用這種方式可以避免手動(dòng)刪除cache;
  • --info:打印堆棧信息缆巧;
  • gradlew --daemon:守護(hù)進(jìn)程怎爵,使用Gradle的守護(hù)進(jìn)程構(gòu)建,能夠提高構(gòu)建效率盅蝗,如果守護(hù)進(jìn)程沒啟動(dòng)或現(xiàn)有的都處于忙碌狀態(tài)鳖链,就啟動(dòng)一個(gè)守護(hù)進(jìn)程;
  • gradlew --no-daemon:如果你已經(jīng)配置為使用守護(hù)進(jìn)程構(gòu)建墩莫,可以使用該選項(xiàng)本次不用守護(hù)進(jìn)程構(gòu)建芙委;
  • gradlew --continuous:連續(xù)構(gòu)建,即任務(wù)隊(duì)列中即使某個(gè)任務(wù)失敗狂秦,不會(huì)終止執(zhí)行灌侣,而是會(huì)繼續(xù)執(zhí)行下一個(gè)任務(wù);
  • gradlew --parallel --parallel-threads=N:并行編譯裂问;
  • gradlew --configure-on-demand:按需編譯侧啼。

??總結(jié):gradlew的有些指令有簡(jiǎn)寫的方式,如"gradlew --version"可以用簡(jiǎn)寫方式"gradlew -v代替堪簿,"gradlew --help"可以用簡(jiǎn)寫方式"gradlew -h""或gradlew -?"代替痊乾,"gradlew --no-rebuild"可以用簡(jiǎn)寫方式"gradlew -a"代替,"gradlew --debug"可以用簡(jiǎn)寫方式"gradlew -d"代替椭更,"gradlew --stacktrace"可以用簡(jiǎn)寫方式"gradlew -s代替等等哪审,可以發(fā)現(xiàn)簡(jiǎn)寫的指令只需要一個(gè)減號(hào)(“-”)開頭,沒有簡(jiǎn)寫的指令需要用兩個(gè)減號(hào)(即“--”)開頭虑瀑。

??如果感覺我的文章對(duì)您有用湿滓,請(qǐng)給個(gè)喜歡,如果有疑問舌狗,也歡迎在下方留言叽奥,謝謝!M词獭朝氓!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市恋日,隨后出現(xiàn)的幾起案子膀篮,更是在濱河造成了極大的恐慌嘹狞,老刑警劉巖岂膳,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異磅网,居然都是意外死亡谈截,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來簸喂,“玉大人毙死,你說我怎么就攤上這事∮黯” “怎么了扼倘?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)除呵。 經(jīng)常有香客問我再菊,道長(zhǎng),這世上最難降的妖魔是什么颜曾? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任纠拔,我火速辦了婚禮,結(jié)果婚禮上泛豪,老公的妹妹穿的比我還像新娘稠诲。我一直安慰自己,他們只是感情好诡曙,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布臀叙。 她就那樣靜靜地躺著,像睡著了一般价卤。 火紅的嫁衣襯著肌膚如雪匹耕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天荠雕,我揣著相機(jī)與錄音稳其,去河邊找鬼。 笑死炸卑,一個(gè)胖子當(dāng)著我的面吹牛既鞠,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播盖文,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嘱蛋,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了五续?” 一聲冷哼從身側(cè)響起洒敏,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎疙驾,沒想到半個(gè)月后凶伙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡它碎,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年函荣,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了显押。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡傻挂,死狀恐怖乘碑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情金拒,我是刑警寧澤兽肤,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站绪抛,受9級(jí)特大地震影響轿衔,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜睦疫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一害驹、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蛤育,春花似錦宛官、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至咕娄,卻和暖如春亥揖,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背圣勒。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工费变, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人圣贸。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓挚歧,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親吁峻。 傳聞我的和親對(duì)象是個(gè)殘疾皇子滑负,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

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

  • 版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載用含。 https://blog.csdn.net/zhaoyanj...
    勤奮的pangdunhu閱讀 2,032評(píng)論 0 1
  • 轉(zhuǎn)至:http://blog.csdn.net/heqiangflytosky/article/details/5...
    kkgo閱讀 2,873評(píng)論 0 1
  • Gradle Build Files in Android 第一章 Gradle for Android Basi...
    敖大膽閱讀 2,490評(píng)論 1 17
  • 1.介紹 如果你正在查閱build.gradle文件的所有可選項(xiàng)矮慕,請(qǐng)點(diǎn)擊這里進(jìn)行查閱:DSL參考 1.1新構(gòu)建系統(tǒng)...
    Chuckiefan閱讀 12,131評(píng)論 8 72
  • 初夏前,家中修剪了野蠻生長(zhǎng)了一春的松枝啄骇,嫩綠的針葉里點(diǎn)綴著朵朵滄桑的松球痴鳄,很有古韻!隨意置于墻邊竹篾上肠缔,都是一道不...
    和鳴閱讀 402評(píng)論 1 6