2014-04-15 10 views
8

Quando Android Studio crea un progetto, il file di configurazione di livello superiore ha due definizioni repository, uno dentro buildscript e un altro all'interno allprojects.Dove e perché aggiungere repository su build.gradle

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

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.9.+' 
    } 
} 

allprojects { 
    repositories { 
     mavenCentral() 
    } 
} 

Dove devo aggiungere un altro repository e perché?

penso che repository all'interno buildscript è qui per aggiungere la dipendenza plug Gradle, ma non sono sicuro ...

Qualcuno mi potrebbe chiarire, per favore.

Grazie!

risposta

12

Il buildscript è per le dipendenze dei file di build. Si desidera aggiungere un repository lì se, ad esempio, un'attività nel proprio build.gradle richiede un plug-in che non si trova nella distribuzione Gradle standard, come un wrapper gwt.

Il allprojects è per le dipendenze necessarie per l'applicazione, come log4j, Guice, Guava e così via.

Inoltre, essere avvertiti che l'uso mavenCentral per il recupero delle dipendenze è un po 'scoraggiato, perché se la rete non funziona o se il progetto viene rimosso dal loro repository, non sarà in grado di costruire il vostro progetto più

+0

Grazie per la risposta. – SergiBC

+0

Se si specifica la versione delle dipendenze (senza '+') e si aggiunge 'mavenLocal()' è possibile creare offline. La prima build di Ofcourse deve essere online per scaricare le dipendenze. – WojciechKo

+0

"Inoltre, sii avvertito ..." - questo mi è appena successo con [Hugo] (https://github.com/JakeWharton/hugo) – arekolek