Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo excluir el módulo de todas las dependencias, pero dejar la declaración explícita Gradle

Estoy tratando de resolver el problema,

Tengo algunas dependencias declaradas en el archivo build.gradle para mi aplicación android, pero el problema es que muchas de estas dependencias utilizan la misma biblioteca compat, en mi caso appcompat-v7 .
Es posible excluir esta biblioteca para cada dependencia

 compile ('com.github......'){ exclude group: 'com.android.support', module: 'appcompat-v7' } 

Pero tengo que hacer esto para cada dependencia
Otra forma es usar tal expresión

 configurations { compile.exclude module: 'appcompat-v7' } 

Esto funciona, pero incluso si declarar esta biblioteca explícitamente se ignora compile 'com.android.support:appcompat-v7:+'

Todo lo que necesito es incluir esta biblioteca sólo una vez para toda la aplicación, porque si compilar sin excluir mostrará una gran cantidad de errores como has been already defined .
Tal vez hay una manera más fácil de conseguir este trabajo. Agradecería cualquier ayuda, gracias.

  • Uso de las divisiones de APK para el tipo de generación Release pero no Debug
  • ¿Por qué Android Studio no me permite crear clases Java?
  • ¿Cómo importar sólo ABI de bibliotecas nativas seleccionadas de AAR?
  • ¿Cómo puedo agregar el archivo aidl al estudio Android (desde el ejemplo de facturación en la aplicación)
  • Desbloqueo de APK de Android con java.lang.AssertionError: imposible en java.lang.Enum
  • Gradle Advertencia: falta declaración groovy devolución
  • One Solution collect form web for “Cómo excluir el módulo de todas las dependencias, pero dejar la declaración explícita Gradle”

    Utilizamos una configuración proporcionada en gradle (de modo que cuando gradle: eclipse, los paquetes están incluidos, pero no se incluyen cuando se compilan en un tarro, ya que se espera que estos tarros se proporcionen en tiempo de ejecución). Esta configuración es similar a la siguiente:

     configurations { provided { dependencies.all {dep -> configurations.default.exclude group: dep.group, module:dep.name } } compile.extendsFrom provided } 

    Esto nos permite incluir dependencias de la siguiente manera:

     dependencies { compile("org.scala-lang:scala-library:2.11.7") compile("org.scala-lang:scala-compiler:2.11.7") provided("org.apache.spark:spark-core_2_11:2.0.0") } 

    Intente crear una configuración que contenga todas las dependencias en las que desee excluir appcompat-v7 y, a continuación, extender la compilación desde esta nueva configuración.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.