¿Cuál es el alcance de dependencia por defecto en Gradle en Android?
En Gradle en Android Studio me di cuenta de proporcionar un ámbito de dependencia es opcional. Por ejemplo:
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1' 'org.hamcrest:hamcrest-core:1.3' 'org.hamcrest:hamcrest-library:1.3' }
Observe que las dos últimas bibliotecas no tienen un ámbito de compilación adjunto. Lo dejé en blanco y todavía era capaz de sincronizar gradle. ¿Cuál es el alcance predeterminado si no se especifica nada aquí?
- Gradle versión 1.8 es necesario. La versión actual es 1.9-rc-3 - Android Studio
- ¿Es posible usar el sistema de compilación de Gradle para Android con Eclipse?
- Ejecutar gradle -v devuelve "JAVA_HOME está establecido en un directorio no válido" aunque tenga un JAVA_HOME válido
- Android Studio Mejor manera de importar el módulo de otro repositorio
- Android Studio 0.4: No se pudo encontrar el método jniDir ()
- Gradle en Android Studio: Error al resolver bibliotecas de terceros
- Excluyendo archivos .class de Gradle dependecy
- ¿Puedo excluir recursos regionales (por ejemplo, valores-fr) al crear un sabor de producto Android con gradle
- Java terminado con valor de salida distinto de cero 2 - Android Gradle
- Generar proyecto eclipse desde el complemento androide gradle
- Dependencias de Gradle no importadas en el proyecto de biblioteca
- Eclipse libGDX no se puede ejecutar como aplicación Android
- Gradle atrapado en el proyecto de construcción en Android Studio
El ámbito es en realidad una etiqueta para una configuración de dependencia dada. Depende mucho de los plugins gradle que esté usando (es decir: plugin java o plugin android). Si no agrega ninguna etiqueta de configuración, se guardará como una dependencia sin etiquetar. La mayoría de las veces si necesita una dependencia de compile
y no agrega la etiqueta, su compilación se romperá. Si no se rompe podría ser porque:
- Realmente no necesitabas la dependencia
- Estás usando un complemento gradle que maneja las dependencias bien sin etiquetar
- O (más probablemente), la dependencia ya está en su caché de compilación o compilación parcial y por lo tanto el compilador todavía es capaz de encontrar las clases, pero se romperá si limpia el proyecto.
Documentación relacionada sobre la configuración de dependencias para gradle
- Conseguir que Crosswalk trabaje con Phonegap Build
- Glide hace que ImageView wrap_content sea inútil y sin animatiion usando target