1. 程式人生 > >buildscript和allprojects的作用和區別是什麼?

buildscript和allprojects的作用和區別是什麼?

在Android Studio的Project的build.gradle中,

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0'
        classpath 'com.novoda:bintray-release:0.4.0'
// NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() maven {url 'https://dl.bintray.com/calvinning/maven'} } }

那麼buildscript中的repositories和allprojects的repositories的作用和區別是什麼呢?
答:
1、 buildscript裡是gradle指令碼執行所需依賴,分別是對應的maven庫和外掛
2、 allprojects裡是專案本身需要的依賴,比如我現在要依賴我自己maven庫的toastutils庫,那麼我應該將maven {url ‘

https://dl.bintray.com/calvinning/maven‘}寫在這裡,而不是buildscript中,不然找不到。

The “buildscript” configuration section is for gradle itself (i.e. changes to how gradle is able to perform the build). So this section will usually include the Android Gradle plugin.
The “allprojects” section is for the modules being built by Gradle.
Oftentimes the repository section is the same for both, since both will get their dependencies from jcenter usually (or maybe maven central). But the “dependencies” section will be different.
Usually the “dependencies” section for “allprojects” is empty since the dependencies for each module are unique and will be in the “build.gradle” file within each of the modules. However, if all of the modules shared the same dependencies then they could be listed here.