Dependencias transicionales de AAR en Maven

Estoy construyendo una aplicación para Android de un proyecto de Maven que utiliza el complemento android-maven. En este proyecto estoy usando la nueva biblioteca de enlace de datos beta.

Se encuentra en el repositorio local del SDK de Android (extras / android / m2repository). Las bibliotecas de este repositorio se empaquetan como tipo aar.

Puedo añadir la dependencia en mi pom así:

<dependency> <groupId>com.android.databinding</groupId> <artifactId>library</artifactId> <version>1.0-rc1</version> <type>aar</type> </dependency> 

Esto parece funcionar, pero la compilación falla con esto:

Error al ejecutar el objetivo en la demostración del proyecto: No se pudo resolver las dependencias para el proyecto com.simpligility.android:demo:apk:1.0.0: No se encontró com.android.support:support-v4:jar:21.0.3 en el archivo: / // Usuarios / eppleton / Bibliotecas de Java / android-sdk-macosx / extras / android / m2repository se almacenó en caché en el repositorio local, la resolución no se volverá a intentar hasta que el intervalo de actualización de android-local-extras haya transcurrido o las actualizaciones sean forzadas. [Ayuda 1]

Es correcto que no haya soporte-v4: jar en este repositorio local, ya que en la versión 20 de API hay support-v4: aar en su lugar.

¿Hay una manera de hacer maven buscar el aar en lugar de la jarra?

Ps: Para mis propias compilaciones locales tengo varias soluciones (por ejemplo, reempaquetar como jar), pero yo preferiría una solución más genérica, ya que quiero compartir la configuración en un arquetipo de maven, y no quiero que los usuarios lo hagan Un montón de trabajo manual. Ahora mismo esta es la mejor solución que tengo:

  <dependency> <groupId>com.android.support</groupId> <artifactId>support-v4</artifactId> <version>21.0.3</version> <scope>system</scope> <systemPath>${android.sdk.path}/extras/android/support/v4/android-support-v4.jar</systemPath> </dependency> 

Pero no es realmente agradable, dependencias transitivas resueltas como aar sería mucho más agradable.

One Solution collect form web for “Dependencias transicionales de AAR en Maven”

OK, encontré una solución. Puedo excluir la dependencia y agregarla de nuevo directamente como tipo 'aar':

  <dependency> <groupId>com.android.support</groupId> <artifactId>support-v4</artifactId> <version>21.0.3</version> <type>aar</type> </dependency> <dependency> <groupId>com.android.databinding</groupId> <artifactId>library</artifactId> <version>1.0-rc1</version> <type>aar</type> <exclusions> <exclusion> <groupId>com.android.support</groupId> <artifactId>support-v4</artifactId> </exclusion> </exclusions> </dependency> 
  • Archivo jar en carpeta res / raw
  • Jar Mismatch Se encontraron 2 versiones de android-support-v4.jar en la lista de dependencias
  • Cómo evitar el acceso de clase en el proyecto de la biblioteca de Android Y utilizar paquetes
  • ¿Cómo integrar la biblioteca de código de Matlab con Android?
  • Actividad de inicio que está en un archivo jar externo
  • Cómo agregar el archivo jar a la ruta de construcción
  • Android Proguard saltar el frasco externo
  • Android no puede encontrar la clase de la jarra externa
  • Cómo crear 2 jarras para pro y lite con el mismo nombre en andorid / eclipse
  • Android Dx advertencia: Ignorar el atributo InnerClasses para un problema de archivo interno anónimo jar
  • Bibliotecas Android / Java
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.