Maven, actionbarsherlock v4 et roboguice v2 - comment puis-je le faire construire?
-
12-11-2019 - |
Question
J'essaie de construire un projet pour utiliser à la fois ActionBarsherlock V4 et Roboguice V2 (j'aime être le bord de saignement :)).
Le problème est que l'ABS utilise une bibliothèque de compatibilité légèrement modifiée, dont Roboguice a besoin. Je l'ai bien fonctionné sous Eclipse en ajoutant actionbarsherlock-plugin-compat-lib-4.0.0-SNAPSHOT
,
roboguice-2.0b3
et le ActionBarSherlock
projet.
Maintenant, le problème est que sous Maven, je dois inclure la dépendance suivante en raison de Roboguice:
<dependency>
<groupId>android</groupId>
<artifactId>compatibility-v4</artifactId>
<version>r3-SNAPSHOT</version>
</dependency>
Et j'ai besoin d'ajouter la dépendance suivante pour ABS:
<dependency>
<groupId>com.actionbarsherlock</groupId>
<artifactId>plugin-compat-lib</artifactId>
<version>4.0.0-SNAPSHOT</version>
</dependency>
Lorsque je fais une "installation MVN Clean", l'erreur suivante se produit:
[INFO] java.lang.IllegalArgumentException: already added: Landroid/
support/v4/app/ActivityCompatHoneycomb;
car ActivityCompatHoneycomb
est présent dans les deux dépendances.
Aucune suggestion?
Le projet complet de code source et de construction est disponible sur:https://github.com/thierryd/adg-android
La solution
Grâce à @DMA_K, cela a fonctionné en ajoutant la balise "Exclusion" suivante et en supprimant la dépendance "Compatibilité-V4":
<dependency>
<groupId>org.roboguice</groupId>
<artifactId>roboguice</artifactId>
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>android.support</groupId>
<artifactId>compatibility-v4</artifactId>
</exclusion>
</exclusions>
</dependency>