android各module的依賴版本統(tǒng)一

開發(fā)項(xiàng)目時,有時會添加多個module依賴,而在各module中,也各自添加了相關(guān)庫的依賴。此時,常見問題就是同一個庫,可能存在兩個或更多版本,導(dǎo)致項(xiàng)目build失敗。

Process 'command '/Users/zhangxueyan/Library/Android/sdk/build-tools/25.0.0/aapt'' finished with non-zero exit value 1

依賴的庫

上圖中紅框即是同一個庫,不同版本的情況。

那么如何解決呢?

在工程build.gradle文件中添加:

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
                defaultConfig {
                    targetSdkVersion 27
                }

            }
        }
    }
}

上面設(shè)置的效果:各子module(包括app module)的compileSdkVersion、buildToolsVersion、targetSdkVersion都將按此設(shè)置。

subprojects { }

作用:配置這個項(xiàng)目的子項(xiàng)目。這個方法對這個項(xiàng)目的每個子項(xiàng)目執(zhí)行給定的閉包。目標(biāo)項(xiàng)目作為閉包的委托傳遞給閉包。

afterEvaluate

afterEvaluate是一般比較常見的一個配置參數(shù)的回調(diào)方式,只要project配置成功均會調(diào)用,參數(shù)類型以及寫法與afterEvaluate相同

調(diào)整后
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android組件化項(xiàng)目地址:Android組件化項(xiàng)目AndroidModulePattern Android組件...
    半灬邊灬天閱讀 2,996評論 4 37
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,745評論 25 709
  • 所有Android插件的基本擴(kuò)展。 你不需要直接使用這個,你可以選擇下面幾個合適的直接使用 AppExtensio...
    我該忘了我自己w_u閱讀 3,558評論 0 5
  • 組件化開發(fā) 是適應(yīng)團(tuán)隊(duì)開發(fā)的一種模式 如果你一個項(xiàng)目有三人以上聯(lián)合開發(fā) 你就會發(fā)現(xiàn)開發(fā)協(xié)作以及效率會大不如從前 代...
    nade_s閱讀 484評論 0 3
  • “銀燭秋光冷畫屏,輕羅小扇撲流螢。天階夜色涼如水,坐看牽??椗??!薄肚锵Α诽啤ざ拍?當(dāng)夜色悄悄降臨,許多曼妙...
    稻米丶閱讀 163評論 0 0

友情鏈接更多精彩內(nèi)容