2015-12-02 32 views
0

頂級build.gradle文件與模塊的build.gradle宣佈依賴關係有什麼區別?Gradle:聲明頂級構建文件與模塊構建文件中的依賴關係?

我看到很多項目在中聲明的依賴項都是的頂層,也在特定的模塊中。

哪種方法看作最優

+1

您能否提供一個例子? – Opal

+0

例如在頂層(項目)聲明一個依賴關係build.gradle vs在項目的子模塊中聲明一個依賴關係? – java123999

+0

http://stackoverflow.com/questions/23241681/why-are-there-two-build-gradle-files-in-an-android-studio-project – ashiquzzaman33

回答

1

如果我有一個所有子項目所需的依賴關係,我會在頂層聲明它。例如,所有的子項目都可能使用junit,所以我會把它放在頂級項目的build.gradle中。如果依賴關係只與一個特定的子項目有關,那麼最好只在該項目中聲明依賴項,因爲這樣可以防止它被牽引到不需要依賴關係的其他子項目中。

+0

好吧,我現在明白這一點,這是由於內存空間? – java123999

+0

其實只是因爲除非需要,否則它無法在代碼中打包大量其他依賴項。它會減慢你的構建,並引起各種其他煩人的問題。 – robjwilkins

+0

是的,如果在頂層聲明一個依賴關係,它將被下載每個子模塊?如果是這種情況,它會覆蓋模塊build.gradle中的一箇舊版本的依賴關係嗎?謝謝,這對我作爲一個新手來說非常有幫助! – java123999