Frage Fehler beim Laden der gemeinsam genutzten JNI-Bibliothek (JDK)


Wenn ich versuche zu öffnen FinsternisIn einem Popup-Dialogfeld wird Folgendes angezeigt:

Fehler beim Laden der gemeinsam genutzten JNI-Bibliothek "C: /JDK/bin/client/jvm.dll" `.

Danach schließt Eclipse Force.

Hier sind ein paar Punkte, die ich gerne machen würde:

  • Ich überprüfte, ob auf diesem Pfad etwas existiert. Das gibt es.
  • Meine Eclipse und Java SE Entwicklungskit sind beide 64-Bit. Ich habe mein System überprüft und es kann 64-Bit verarbeiten.
  • Ich habe auf Google und auf Stack Overflow nach diesem Problem gesucht. Die einzige Antwort, die ich gefunden habe, war, die 32-Bit-Versionen von JDK und Eclipse herunterzuladen.

Das Herunterladen der 32-Bit-Versionen möchte ich nur als letzten Ausweg tun.
Was wäre zur Lösung dieses Problems vorgeschlagen?


861


Ursprung


Antworten:


Sie benötigen ein 64-Bit-Trio:

  • 64-Bit-Betriebssystem
  • 64-Bit Java
  • 64-Bit-Eclipse

807



Arbeitspaare von OS, JDK und Eclipse:


  • 32-Bit-Betriebssystem - 32-Bit-JDK - 32-Bit-Eclipse (nur 32-Bit)
  • 64-Bit-Betriebssystem - 32-Bit-JDK - 32-Bit-Eclipse
  • 64-Bit-Betriebssystem - 64-Bit-JDK - 64-Bit-Eclipse (nur 64-Bit)

Ich hatte mehrere JDKs und JREs installiert.

Jeder von ihnen hatte einen eigenen Eintrag in der PATH-Variablen, alle arbeiteten mehr oder weniger.

Ausgehend von den PATH-Variablen waren einige Installationen völlig nutzlos, da sie nie benutzt wurden. Natürlich könnten die "inaktiven" Javas manuell in Eclipse referenziert werden, wenn ich es brauche, aber ich habe das nie getan, also brauchte ich sie wirklich nicht. (Zumindest dachte ich das damals ...)

Ich räumte das Durcheinander auf, deinstallierte alle aktuellen Java's und installierte nur JDK + JRE 1.7 64-bit.

Eine der Eclipse 'Installationen' scheiterte danach mit der Failed to Load the JNI shared Library und einen gegebenen Pfad relativ zu dem frisch installierten JDK, wo er dachte jvm.dll sein.

Das fehlerhafte Eclipse war das einzige meiner IDEs, das immer noch eine 32-Bit-Version auf meinem ansonsten 64-Bit-Setup war.


295



Stellen Sie sicher, dass Ihre Datei eclipse.ini die folgenden Zeilen enthält.

-vm
C:\path\to\64bit\java\bin\javaw.exe

Meine eclipse.ini zum Beispiel:

-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.2.R36x_v20101222
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
-vm
C:\Program Files\Java\jdk1.6.0_32\bin\javaw.exe
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

Verwenden Sie OS und Eclipse beide 64-Bit oder beide 32-Bit behalten Sie die gleiche und Config eclipse.ini.

Ihre eclipse.ini-Datei befindet sich in Ihrem Eclipse-Ordner.


254



Ich hatte dasselbe Problem

Ich habe es gelöst, indem ich 64 Bit JVM von installiert habe

http://www.java.com/de/download/manual.jsp


56



Dieser Fehler bedeutet, dass die Architektur von Eclipse nicht mit der Architektur der Java-Laufzeitumgebung übereinstimmt, d. H. Wenn der eine 32-Bit-Wert ist, muss der andere identisch sein und nicht 64-Bit.

Die zuverlässigste Lösung besteht darin, den JVM-Speicherort in der Datei eclipse.ini anzugeben:

-vm
C:\Program Files (x86)\Java\jdk1.7.0_55\bin\javaw.exe

Wichtig: Diese zwei Zeilen müssen kommen Vor -vmargs. Verwenden Sie keine Anführungszeichen. Leerzeichen sind erlaubt.


34



Eine andere Option ist:

Erstellen Sie eine Verknüpfung zu der Eclipse.exe. Öffne die Verknüpfung und ändere das Ziel zu:

"C:\Program Files\eclipse\eclipse.exe" -vm "c:\Program Files\Java\jdk1.7.0_04\bin\javaw.exe"

Stellen Sie für Ihre Installation sicher, dass die Standorte auf das richtige Eclipse-Installationsverzeichnis und das korrekte Eclipse-Installationsverzeichnis verweisen javaw.exe Installationsverzeichnis.

(Die 64/32-Bit-Versionen von Eclipse und Java müssen natürlich identisch sein.)


31



Ich habe mehrere Versionen von Java installiert, sowohl Sun JDK als auch JRockit, sowohl 32-Bit als auch 64-Bit, usw. und stieß auf dieses Problem mit einer neuen Installation von 64-Bit Eclipse für Java EE (JUNO).

Was hat NICHT Arbeit:

64-Bit-Trio nach Peter Rader:

Ich verwende 64-Bit-Eclipse unter 64-Bit-Betriebssystem (Windows 7).

Ich stellte sicher, dass Sun JDK 7 64-Bit die Standard-Java-Version war. Als ich "java -version" von der Kommandozeile (cmd.exe) eintippte, wurde Sun JDK 7 64-bit zurückgegeben ...

java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)

Das hat das Problem für mich nicht gelöst.

Was DID Arbeit:

Hinzufügen der Option -vm zu Eclipse.ini, wie von Jayesh Kavathiya vorgeschlagen:

Ich habe Folgendes zu eclipse.ini hinzugefügt:

-vm
C:/apps/java/jdk7-64bit/bin/javaw.exe

Hinweis:

Ich musste keine der verschiedenen Versionen von JDK oder JRE auf meinem Rechner deinstallieren.


29



Für einen vermissten jvm.dll Datei können wir den Pfad der DLL-Datei angeben eclipse.ini Datei als

-vm
C:\Progra~1\Java\jdk1.6.0_38\jre\bin\server\jvm.dll

Hier ist es wichtig, Leerzeichen im Pfad und doppelte Anführungszeichen zu entfernen. Es funktionierte für mich, als ich die Zitate und das Leerzeichen entfernte.

Ich hoffe es hilft jemandem.


17