Gradle 4.0 以下
provided:是指編譯的時(shí)候依賴這個(gè)jar包梦皮,但是最終打包的時(shí)候不打進(jìn)去 在運(yùn)行時(shí)不需要
compile: 依賴且打包炭分,即 編譯和運(yùn)行是皆需要,是最常用的
runtime: 只運(yùn)行時(shí)需要 編譯時(shí)不需要
Gradle 4.0及以上
在AndroidStudio升級(jí)3.0后剑肯,Gradle默認(rèn)升級(jí)4.0捧毛,原本的compile指令被做了過(guò)時(shí)標(biāo)記。
替代:
api:
完全等同于compile指令让网,沒(méi)區(qū)別呀忧,你將所有的compile改成api,完全沒(méi)有錯(cuò)溃睹。組件化時(shí)的基礎(chǔ)library需要向外共享依賴而账,只能使用api。
implement:
這個(gè)指令的特點(diǎn)就是丸凭,對(duì)于使用了該命令編譯的依賴福扬,對(duì)該項(xiàng)目有依賴的項(xiàng)目將無(wú)法訪問(wèn)到使用該命令編譯的依賴中的任何程序腕铸,也就是將該依賴隱藏在內(nèi)部,而不對(duì)外部公開(kāi)铛碑『莨可以用于該module不對(duì)于外部提供依賴的情況。
在適當(dāng)?shù)那闆r選用implement替代api可加快編譯的速度