2013-05-12 15 views
5

Ich importiere 2 externe Bibliotheken (Bibliothek A und Bibliothek B) in mein Projekt in Eclipse. Diese Bibliotheken benötigen beide die "android-support-v4.jar" -Bibliothek. Also beim Kompilieren, es verursacht Fehler:Konflikt zwischen mehreren "android-support-v4" -Bibliotheken

 
Jar mismatch! Fix your dependencies 

Ich habe alle ähnliche Fragen gelesen, und habe versucht die Bibliothek „Androi-support-v4.jar“ von meinem Projekt zu löschen. Befolgen Sie die Anweisungen: Eigenschaften-> Java-Buildpfad -> Bibliotheken -> Wählen Sie "android-support-v4.jar" -> Alle Schaltflächen sind deaktiviert. Ich kann es nicht löschen ???

enter image description here

Selbst in dem Fall, könnte ich "android-support-v4.jar" von meinem Projekt, löschen gibt es noch einen Konflikt zwischen zwei Bibliotheken A und B. Da sowohl A als auch B Notwendigkeit android“ -support-v4.jar ". Wenn ich "android-support-v4.jar" aus Bibliothek A lösche, kann Bibliothek A nicht kompiliert werden.

+3

Löschen Sie dieses Glas aus Ihrer Projekthierarchie. Dann kopiere einfach einen anderen hier und füge von Eigenschaften hinzu. Sei sicher, dass es sich bei beiden um gleiche Jars handelt. Hast du das versucht? –

+0

Löschen Sie den/libs/Ordner – Blundell

+0

Ich habe "android-support-v4.jar" aus meinem Projekt gelöscht. Aber es gibt immer noch einen Konflikt zwischen 2 Bibliotheken A und B. Wenn ich "android-support-v4.jar" aus der Bibliothek A lösche (lösche den Ordner libs /), kann die Bibliothek A nicht wie gesagt kompiliert werden: – chipbk10

Antwort

9

Dank @SercanOzdemir für Ihre Antwort. Die Lösung ist mein Projekt und alle Abhängigkeiten Bibliotheken müssen nur auf ein "android-support-v4.jar" schließen. Also, was ich tue, ist

  • In meinem Projekt I "android-support-v4.jar" von Bibliothek A
  • In der Bibliothek B hinzufügen, lösche ich sein Glas, und auch hinzufügen „android-Support- v4.jar“von Bibliothek A

So schließen alle nur auf einem "android-support-v4.jar" von Bibliothek A

+0

Ihre Begrüßung ^^ –

2

Sie können ein neues Bibliotheksprojekt mit der SupportLibrary jAR-Datei erstellen, und haben Alle Ihre Projekte, die die Support-Bibliothek benötigen, verweisen darauf. Auf diese Weise müssen Sie nur 1 Kopie des Jars verwalten. Stellen Sie nur sicher, dass Sie jedes Mal, wenn Sie die Support-Bibliothek aktualisieren, einen sauberen Build erstellen.

Sie können eine gemeinsame Kopie der SupportLibrary behalten und alle Projekte als externen jar im Build-Pfad hinzufügen. Sie können die Bibliothek jedoch nicht so schnell aktualisieren, wie Sie könnten, indem Sie ein Projekt daraus erstellen.

PS: Wenn Sie das SupportLibrary-Projekt erstellen, stellen Sie sicher, dass Sie keine Ressourcen als Teil davon enthalten. Normalerweise erstellt Eclipse beim Erstellen eines neuen Projekts Werte - v11/styles.xml und v14/styles.xml -. Dies kann dazu führen, dass der Build fehlschlägt, wenn ein anderes Bibliotheksprojekt Ihr SupportLibrary-Projekt enthält (insbesondere, wenn es auf APIs unterhalb von Honeycomb abzielt).

Verwandte Themen