原: http://www.tuicool.com/articles/rUfEBrr
爲什麼repositories要聲明兩次?buildscript代碼塊中的聲明與下半部分聲明有什麼不同?
其實答案非常簡單。buildscript中的聲明是gradle腳本自身需要使用的資源。可以聲明的資源包括依賴項、第三方插件、maven倉庫地址等。而在build.gradle文件中直接聲明的依賴項、倉庫地址等信息是項目自身需要的資源。
buildscript代碼塊中的repositories和dependencies的使用方式與直接在build.gradle文件中的使用方式幾乎完全一樣。唯一不同之處是在buildscript代碼塊中你可以對dependencies使用classpath聲明。該classpath聲明說明了在執行其餘的build腳本時,class
loader可以使用這些你提供的依賴項。這也正是我們使用buildscript代碼塊的目的。