In Eclipse, nicht in der Lage, ein Android-Bibliothek-Projekt in einem anderen Android-Projekt zu verweisen

Als ich diese Frage aufgeschrieben habe, habe ich es geschafft, es so zu wiederholen, um es hier zugunsten anderer zu wiederholen. Hier ist das erste Problem:

Ich habe ein sehr einfaches Bibliotheksprojekt erstellt, das ich in einem anderen Projekt verweisen möchte. Ich habe das bisher ohne Probleme gemacht, also nicht wirklich sicher, warum es hier nicht funktioniert. Ich habe:

  1. Das Projekt wurde über Projekteigenschaften markiert. Die default.properties Datei hat diesen Satz: android.library=true

  2. In meinem anderen Projekt fügte ich auf mein Bibliotheksprojekt über Projekteigenschaften hinzu. Die default.properties Datei hat die Referenz als erwartet hinzugefügt, dh android.library.reference.1=K:/android_test_ws/applicationRegistrar

  3. Das grüne Häkchen gegen das referenzierte Bibliotheksprojekt startet grün und wechselt dann zu einem roten Kreuz.

Das bedeutet, dass es aus dem Bibliotheksprojekt etwas falsches oder fehlen muss, aber ich weiß nicht was. Mein Bibliotheksprojekt bei dieser Gelegenheit ist viel einfacher als das vorherige, das ich erstellt habe.

  • Importieren Sie das vorhandene Android-Projekt in Eclipse: no gen source folder?
  • Holen Sie sich die Klassenstruktur eines Android-Projekts
  • Android Studio - Wie kopiere ich ein Projekt?
  • Android Studio bewegt Projekt auf einen anderen Computer?
  • Verhindern Sie Android Studio / Intellij Idee aus dem Projekt beim Start
  • Android Eclipse - Ausrufezeichen neben Projektname
  • Crosswalk stürzt mit AssertionFailedError ab
  • Leere Mikrofondaten mit Crosswalk in Ionic 2 Anwendung
  • 18 Solutions collect form web for “In Eclipse, nicht in der Lage, ein Android-Bibliothek-Projekt in einem anderen Android-Projekt zu verweisen”

    OK Hier ist die Lösung, die ich bei der Suche nach der default.properies-Datei des referenzierenden Projekts (nicht die Bibliothek) in meinem Dateisystem gefunden habe. Obwohl das referenzierende Projekt im selben Eclipse-Arbeitsbereich wie das Bibliotheksprojekt war, waren die eigentlichen Dateien irgendwo anders im Dateisystem, dh sie waren nicht im selben übergeordneten Ordner des Bibliotheksprojekts. Sobald ich das referenzierende Projekt in denselben physischen Ordner wie das Bibliotheksprojekt gestellt habe, ging es gut.

    Ich vermute, dass dies etwas mit Android unter Verwendung von Ameise unter den Deckeln zu tun sein muss.

    Bearbeiten: Der Projektname muss mit dem Ordnernamen im Dateisystem übereinstimmen. Was Sie in den Project Properties-> Android-> Library Reference sehen, ist ein relativer Dateisystempfad.

    Stellen Sie sicher, dass beide Projekte im gleichen Arbeitsbereich vorhanden sind. Um es zu tun, beim Importieren der Projekte sicherzustellen, dass das Kontrollkästchen "Projekt in Arbeitsraum kopieren" aktiviert ist.

    Das gleiche Problem tritt auf, wenn Ihr Bibliotheksprojekt in einer anderen Partition von Ihrem aktuellen Arbeitsbereich ist. Ich habe jetzt das gleiche Problem. Meine Git-Quelle ist in C: und ich verschiebe einfach meinen Arbeitsbereich auf D: und alles beginnt zu kollabieren.

    Einfachste Weg, um die Bibliothekspfade Pfade richtig zu bekommen, ist die GUI von Eclipse verwenden, um die Bibliothek, wie in der folgenden Screenshot gezeigt hinzuzufügen und lassen Sie Eclipse kümmern sich um die richtige relative Pfade in project.properties. Es ist ein gemeinsames Setup, um Ihre Bibliotheksprojekte in Verzeichnissen gehostet zu haben, die sich von den Hauptprojekten unterscheiden, die die Bibliothek verwenden. Diese Methode wird funktionieren, wenn das "libary project" und das Projekt, das es benutzt, in der gleichen Eclipse "workspace" sind (sie müssen nicht in demselben übergeordneten Ordner sein): Bildbeschreibung hier eingeben

    Bitte stellen Sie sicher, dass das Bibliotheksprojekt als "Is Library" markiert ist – klicken Sie mit der rechten Maustaste auf das Bibliotheksprojekt – Eigenschaften – Android – markieren Sie das Kontrollkästchen "Is Library" – in Projektprofilen des Bibliotheksprojekts sollten Sie einen neuen Eintrag haben: "android .Library = true, füge es nun in das Projekt ein, das du möchtest, wie es in der Post unten beschrieben ist (die Post mit Bild integriert – von Nilesh Pawar).

    Dieser Bug wird hier mehrmals referenziert 27199 , 35786 , 36460 & 38052

    Vielleicht durch die Abstimmung für sie, wird es eines Tages …

    Noch eine weitere Beobachtung zum selben Thema.

    Für mich die beiden Projekte, wo auf dem gleichen Elternteil, und waren beide lokal im Arbeitsbereich. Sogar dann ist das Problem noch passiert.

    Ich habe die Datei "project.properties" bearbeitet und den absoluten Pfad (mit Schrägstrich '/' für Seperator) des Bibliotheksprojekts gesetzt. Gespeichert und geschlossen. Dann ging es zum Projekt-Eigenschaften-Dialog, entfernte die Bibliothek (die immer noch die Cross-Symbol aber mit abs Pfad) und fügte es zurück wie gewohnt. Überraschenderweise ist das Problem gelöst und das Projekt kompiliert und läuft.

    Das ist wirklich seltsam und muss ein Fehler mit dem ADT sein. Ich benutze ADT Version 20.0.2

    Wenn der Entwickler auf das Facebook oder ein anderes Bibliotheksprojekt verweist, dann reinigen Sie zunächst das Projekt aus eclipse-> project-> clean project. Die den Fehler des roten Kreuzes im Referenzbildschirm zulassen wollen.

    Für mich, ich gerade neu starten die Eklipse und die hinzugefügte Bibliothek funktioniert gut.

    Ich meine das erste Mal, dass es nach dem Hinzufügen des Bibliotheksprojekts rote Markierungen zeigt. Obwohl eclipse Hauptprojekt und Bibliothek Projekt sind in der gleichen Arbeitsbereich Ordner und keine Ressourcen-Dateien sind außerhalb des Projekt-Ordner.

    So können Sie versuchen, Ihre Eclipse neu zu starten. Glückliche Kodierung ….

    Umgang für mich war

    1. Erstellen Sie einen neuen Arbeitsbereich
    2. Import-Bibliotheksprojekt in diesem Arbeitsbereich
    3. Importieren Sie das gewünschte Projekt in diesem Arbeitsbereich
    4. Sowohl Projekt- als auch Bibliotheksprojekt haben die gleiche Android-Android-Version
    5. Referenzbibliotheksprojekt in meinem Projekt

    Löste mein Problem

    Ich hatte das gleiche Problem dort, wenn ich versuche, meinen Arbeitsbereich zu ändern, also meine Lösung:

    1. Importieren und kopieren Sie alle Projektdaten inklusive Bibliotheksprojekt in den Arbeitsbereich
    2. Löschen Sie die alte Projektreferenz mit der rechten Maustaste auf das Projekt -> Eigenschaften -> Android -> Bibliothek und wählen Sie beschädigte Bibliothek (so dass waht ich es nennen) und wählen Sie Entfernen
    3. Sauberes Projekt zuerst (um ur Projekteigenschaften zu aktualisieren)
    4. Gehen Sie zu Bibliotheksprojekt Eigenschaften -> Android -> Bibliothek und überprüfen Sie die Bibliothek, wenn es nicht auf Apply klicken und dann OK
    5. Wenn das Bibliotheksprojekt Bibliothek ist bereits überprüft, zuerst Unchecked es dann reinigen Sie das Bibliotheksprojekt, nachdem die Schritt 4 wieder
    6. Gehen Sie zu Projekt, dass Sie wollen, dass die Bibliothek ist dann mit der rechten Maustaste auf das Projekt -> Eigenschaften -> Android -> Bibliothek, Hinzufügen dann wählen Sie das Bibliotheksprojekt (es sollte dort sein) und klicken Sie auf Übernehmen und dann OK
    7. Wenn noch nicht das Problem noch einmal sauber erscheint, und das sollte das tun

    Starten Sie einfach Ihre Eklipse neu. Es ist mein Problem zu lösen

    Wenn man sich den Referenzpfad vor und nachher anschaut, kommt es aus zB "C: / workspace / mylib" und geht zu "../../mylib" bei der kopierten an den richtigen standort, ganz interessant.

    FYI,

    Was für mich gearbeitet hat, war, die "Bibliothek" -Projekte (die eigentlichen Projekte) aus meinem Arbeitsbereich zu löschen (ohne die Dateien zu löschen) und dann mit dem Assistenten erneut zu importieren (bestehendes Android-Projekt aus Quellcode importieren).

    Vielen Dank für die Buchung der Frage. Ich hatte genau das gleiche Problem bei der Integration von Facebook mit meiner Android-Anwendung. Ich habe das Problem behoben, indem ich mein Entwicklungsprojekt auf das gleiche Windows-Laufwerk verlagere, in dem sich das Bibliotheksprojekt befand. Irgendwie kann Eclipse den Standort des Bibliotheksprojekts nicht ordnungsgemäß von default.properties ablesen, wenn es sich in einem anderen Laufwerk befindet.

    Ähnlich wie bei Sufi Khan's Post habe ich auch dieses Problem mit einem Neustart gelöst. Mein Fall unterscheidet sich darin, dass ich beim ersten Zugriff auf Eigenschaften-> Android und die Bibliothek hinzugefügt habe, bekam ich ein schönes grünes Häkchen. Als ich den Dialog geschlossen hatte, zeigte Eclipse immer noch nicht gefundene Typfehler. Als ich die Eigenschaften wieder überprüfte, sah ich das rote X. Aber Mr. Kahn's Lösung (lösche die schlechte lib, neu starten Eclipse, füge die lib wieder) funktionierte gut.

    Ich benutze die 0702 Version des ADT Bündels (beginnt mit "Cluster", Reime mit "Ente").

    Ich folgte der akzeptierten Antwort, musste aber auch sicherstellen, dass meine "project.properties" -Datei lesbar war.

    Wenn die Datei readonly ist (in Quellcode kontrolliert), wird die Eclipse nicht bearbeitet. Das Hinzufügen der Bibliotheksreferenz wird erfolgreich sein, aber die Änderung wird nicht behoben, nachdem Sie OK getroffen haben.

    Wenn Sie das Einstellungsfenster schließen und wieder öffnen, entfernt die Bibliothek, die Sie gerade hinzugefügt haben, kann dies Ihre Lösung sein.

    Falls Ihr Bibliotheksprojekt immer noch nicht angezeigt wird, versuchen Sie, das Bibliotheksflag in Ihren Bibliotheksprojekteigenschaften hinzuzufügen

    Add android.library = true

    Project.properties

     # This file is automatically generated by Android Tools. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! # # This file must be checked in Version Control Systems. # # To customize properties used by the Ant build system edit # "ant.properties", and override values to adapt the script to your # project structure. # # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. target=android-17 android.library=true 
    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.