Wie kann ich das java.library.path
für ein ganzes Eclipse-Projekt festlegen ? Ich verwende eine Java-Bibliothek, die auf betriebssystemspezifischen Dateien basiert und eine finden muss .dll/
.so/
.jnilib
. Die Anwendung wird jedoch immer mit der Fehlermeldung beendet, dass diese Dateien nicht im Bibliothekspfad gefunden werden.
Ich möchte dieses gesamte Projekt so konfigurieren, dass es den Bibliothekspfad verwendet. Ich habe versucht, den Pfad als VM-Argument zu einigen Ausführungskonfigurationen in Eclipse hinzuzufügen, aber das hat nicht funktioniert.
java
eclipse
configuration
buildpath
Janusz
quelle
quelle
Antworten:
Leg dich nicht mit dem Bibliothekspfad an! Eclipse baut es selbst!
Gehen Sie stattdessen in die Bibliothekseinstellungen für Ihre Projekte und erweitern Sie sie für jede JAR / etc, für die eine native Bibliothek erforderlich ist, auf der Registerkarte Bibliotheken . In der dortigen Baumansicht enthält jede Bibliothek Elemente für Quell- / Javadoc- und native Bibliotheksstandorte.
Insbesondere: Wählen Sie
Project
, klicken Sie mit der rechten Maustaste -> Eigenschaften / Java-Erstellungspfad / Bibliotheken , wählen Sie eine JAR-Datei aus, erweitern Sie sie, wählen Sie den Speicherort der nativen Bibliothek aus und klicken Sie auf Bearbeiten nativen . Das Dialogfeld zur Ordnerauswahl wird angezeigt.Das Durcheinander mit dem Bibliothekspfad in der Befehlszeile sollte Ihre letzte Anstrengung sein, da Sie möglicherweise etwas beschädigen, das bereits durch Eclipse richtig festgelegt wurde.
quelle
Wenn Sie es als VM-Argument hinzufügen, stellen Sie sicher, dass Sie Folgendes voranstellen
-D
:quelle
Abgesehen von der in der genehmigten Antwort beschriebenen Methode gibt es eine andere Möglichkeit, wenn Sie einzelne native Bibliotheken in Ihrem Projekt haben.
java.library.path
.quelle
Für einen bestimmten Anwendungsstart können Sie dies tun, wie Jim sagt.
Wenn Sie es für den gesamten Arbeitsbereich festlegen möchten, können Sie es auch unter festlegen
Jede JRE verfügt über "Standard-VM-Argumente" (die meines Erachtens vollständig ignoriert werden, wenn VM-Argumente für eine Ausführungskonfiguration festgelegt werden.)
Sie können sogar verschiedene JRE / JDKs mit unterschiedlichen Parametern einrichten und einige Projekte verwenden, andere Projekte andere.
quelle
Sie können fügen Sie einfach
-Djava.library.path=yourPath
auf dieeclipse.ini
.quelle
Fügen Sie einfach die
*.dll
Dateien zu Ihrem hinzuc:/windows
Sie können den Pfad java.library.path aus den folgenden Codes abrufen: und dann Ihre DLL-Dateien unter einem beliebigen Pfad hinzufügen, den Sie erhalten
quelle
c:/windows
einzufügen, hat mir gezeigt, dass es sich nur um ein Pfadproblem handelt und nicht um ein Problem mit den DLLs.Keine der oben genannten Lösungen hat bei mir funktioniert (Eclipse Juno mit JDK 1.7_015). Java konnte die Bibliotheken nur finden, wenn ich sie von project_folder / lib nach project_folder verschoben habe.
quelle
Ich denke, es gibt noch einen anderen Grund, sich setzen zu wollen
java.library.path
. Subversion enthält viele Bibliotheken, die von Eclipse nur angezeigt werden, wennjava.library.path
sie angehängt werden können. Zum Beispiel bin ich auf OS-X, also sind die Bibliotheken unter\opt\subversion\lib
. Es gibt viele von ihnen und ich möchte sie dort lassen, wo sie sind (nicht in ein Standard-lib-Verzeichnis kopieren).Die Projekteinstellungen beheben dies nicht.
quelle
Klicken Sie auf Ausführen.
Klicken Sie auf Debuggen ...
Neue Java-Anwendung.
Klicken Sie
im zweiten Feld (VM-Argumente) auf die Registerkarte Argumente. Fügen Sie den Eintrag -D hinzu
etc...
quelle
Eine andere Lösung wäre, die 'Konfiguration ausführen' zu öffnen und dann auf der Registerkarte 'Umgebung' das Paar {Pfad, Wert} festzulegen.
Um beispielsweise ein 'lib'-Verzeichnis hinzuzufügen, das sich im Stammverzeichnis des Projekts befindet,
quelle
-Djava.library.path
auf der Registerkarte Argumente ?Denken Sie daran, den nativen Bibliotheksordner in PATH aufzunehmen.
quelle
Ich verwende Mac OS X Yosemite und Netbeans 8.02. Ich habe den gleichen Fehler erhalten und die einfache Lösung, die ich gefunden habe, ist wie oben. Dies ist nützlich, wenn Sie eine native Bibliothek in das Projekt aufnehmen müssen. Machen Sie das nächste für Netbeans:
Ich hoffe, es könnte für jemanden nützlich sein. Der Link, unter dem ich die Lösung gefunden habe, ist hier: java.library.path - Was ist das und wie wird es verwendet?
quelle
Manchmal erhalten wir keinen Java Build Path, wenn Sie direkt mit der rechten Maustaste auf das Projekt klicken. dann gehen Sie zu Eigenschaften ....
Klicken Sie dann auf Java Build Path
Klicken Sie auf die Registerkarte Externe Gläser hinzufügen und geben Sie den Pfad Ihrer Computerdatei an, in der Sie Gläser gespeichert haben.
quelle
Hier ist ein weiterer Fix:
Mein Build-System (Gradle) hat dem Eclipse-Build-Pfad eine erforderliche native Bibliothek (DLL) hinzugefügt (Rechtsklick auf Projekt -> Eigenschaften -> Java-Build-Pfad -> Bibliotheken). Das Problem wurde behoben, indem das Build-System angewiesen wurde, die native DLL-Bibliothek nicht zum Eclipse-Klassenpfad hinzuzufügen.
quelle
Sie können vm-Argumente in Ihre Eclipse einfügen.
Beispiel:
Wo
cots_lib
ist Ihre externe Ordnerbibliothek?quelle
Am einfachsten wäre es, die Eclipse-IDE selbst zu verwenden. Gehen Sie zum Menü und legen Sie den Erstellungspfad fest. Zeigen Sie auf den JAVA JDK- und JRE-Dateipfad in Ihrem Verzeichnis. Anschließend können Sie den Erstellungspfad überprüfen, in dem kompilierte Dateien festgelegt werden sollen. Standardmäßig jedoch im Ordner bin. Das Beste wäre, Eclipse zu erlauben, sich selbst mit dem Erstellungspfad zu befassen und ihn nur ähnlich wie die oben angegebene Lösung zu bearbeiten
quelle