Fehler beim Laden der gemeinsam genutzten JNI-Bibliothek beim Starten von Eclipse

27

Ich habe die neueste Version von Eclipse heruntergeladen, kann sie jedoch nicht starten.

Die Fehlermeldung, die ich erhalte, ist:

Fehler beim Laden der gemeinsam genutzten JNI-Bibliothek "C: \ Programme (x86) \ Java \ jdk1.6.0_20 \ bin .. \ jre \ bin \ client \ jvm.dll".

Wie behebe ich das?

Ich verwende 64-Bit-Windows, 32-Bit-JDK und habe 64-Bit-Eclipse heruntergeladen.

Jonas
quelle
Das ist merkwürdig. Die Datei jvm.dll sollte sich in C: \ Programme (x86) \ Java \ jdk1.6.0_20 \ jre \ bin \ client \ jvm.dll befinden, nicht in C: \ Programme (x86) \ Java \ jdk1.6.0_20 \ bin \ ...
AndrejaKo

Antworten:

34

Dies ist normalerweise der Fall, wenn zwischen den installierten Versionen von JDK und Eclipse ein 32-Bit- und ein 64-Bit-Konflikt besteht!

Ihre Version von Eclipse versucht, auf ein 32-Bit-JDK zuzugreifen (wie in C: \ Programme (x86) angegeben ), schlägt jedoch entweder fehl, weil Eclipse ein 64-Bit-JDK erwartet, oder weil das 32-Bit-JDK fehlt Sie müssen sicherstellen, dass die Eclipse- und JDK-Versionen dementsprechend übereinstimmen.

Steffen Opel
quelle
Ich verwende 64-Bit-Windows, 32-Bit-JDK und habe 64-Bit-Eclipse heruntergeladen. Jetzt mit 32-Bit-Eclipse funktioniert es besser, danke.
Jonas
@Jonas - Ich habe die fehlerhaften Annahmen zu den installierten Versionen entfernt, danke, dass Sie dies durch Angabe Ihres Setups hervorgehoben haben.
Steffen Opel
3

Ich hatte sowohl JDK- als auch Eclipse-64-Bit-Versionen installiert, aber das gleiche Problem ...

Schließlich stellte ich fest, dass meine %PATH%Systemvariable den Ordner nicht enthielt. Vergessen Sie nicht, es in den richtigen Ordner zu ändern, in dem Ihr JDK \ bin installiert ist. Hat für mich gearbeitet.

RDB
quelle
2
-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/jre/bin
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

benutze eclipse und os beide 64 bit oder beide 32 bit

jayesh kavathiya
quelle
1

Unter Windows 7 haben Sie die Möglichkeit, symbolische Links wie unter Unix zu verwenden.

cmdFühren Sie mit (als Administrator ausführen) Folgendes aus: mklink /d jdk jdk-versionnr-etcSie müssen Ihren Pfad nicht aktualisieren, JAVA_JOMEwenn Sie das nächste Mal Java aktualisieren.

bud.minton
quelle
1

Ich hatte eine 64-Bit-Eclipse und 32-Bit-Java und hatte das gleiche Problem. Nach der Installation von 64-Bit-Java und dem Aktualisieren des Systempfads treten keine Probleme auf.

Shankar K Pillai
quelle
1

Wenn Sie 64-Bit-Eclipse und ein 64-Bit-JDK / JRE heruntergeladen haben, überprüfen Sie die Verfügbarkeit von javaw.exe für 64-Bit.

In meinem Fall war es in C:\Program Files\Java\jre6\bin

Ich habe Eclipse in den c:\eclipseOrdner extrahiert . innerhalb dessen steht die eclipse.inidatei zur verfügung. Ersetzen Sie den Inhalt dieser Datei durch Folgendes:

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-framework
plugins\org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xmx700m
-XX:MaxPermSize=690M

Lassen Sie die neue Zeile zwischen dem Flag -vm und dem Wert. Es hat bei mir funktioniert.

Ramkumar Lakshminarayanan
quelle
Vielen Dank. Ich habe nur die Zeile "-vm C: \ Programme \ Java \ jre6 \ bin \ javaw.exe" kopiert und alles andere gleich belassen.
Stopher87
0

Ich hatte das gleiche Problem, obwohl ich 64-Bit-Versionen von JDK und Eclipse hatte. Ich fand heraus, dass der JDK-Pfad in eclipse.ini fehlte.

Also habe ich folgende Zeilen in die Datei eclipse.ini eingefügt:

-vm
C:\Program Files\Java\jdk1.7.0_45\jre\bin <this might be different on your machine>

Dies löste das Problem! :-)

Nitinkumar Chobhe
quelle
0

Wenn es sich bei Eclipse um 64-Bit handelt, aktualisieren Sie Java unter Pfad zu C: \ Programme \ Java \ jre7

oder aber

Überprüfen Sie den Java-Speicherort, auf den Eclipse verweist, und kopieren Sie den Inhalt C: \ Programme \ Java \ jre7 in den Eclipse-Speicherort.

Referenz - http://www.buggybread.com/2013/01/failed-to-load-jni-shared-library.html

Vivek Vermani
quelle
0

1.Verfügbares jdk7.1 deinstallieren (es war 64 Bit) 2. Heruntergeladene und installierte jdk7.1 32 Bit. Die jvm.dll befindet sich im folgenden Pfad: "C: \ Programme (x86) \ Java \ jdk1.7.0_75 \ jre \ bin \ client"

Hoffe, es funktioniert.

Charmy Vora
quelle
0

Um die Antwort von Steffen Opel näher zu erläutern, besteht ein Konflikt zwischen der in der Datei eclipse.ini angegebenen JVM und der JVM, die aufgrund der Einträge in Ihrer Windows-Pfadumgebungsvariablen gefunden und gestartet wurde. Um das Problem zu beheben, stellen Sie sicher, dass beide auf dieselbe JVM verweisen.

Um dieses Problem zu beheben, gehen Sie folgendermaßen vor:

1.
Ändern Sie die Eclipse-Konfiguration so, dass sie mit der gewünschten Version von JVM gestartet wird. Öffnen Sie die Datei eclipse.ini und ändern Sie die folgende Zeile in die Java-Version, die Sie verwenden möchten:

-Dosgi.requiredJavaVersion=1.5

2. Stellen Sie sicher, dass Eclipse auf die erforderliche JVM zugreifen kann. Wechseln Sie zu
Systemsteuerung -> Systemumgebungsvariablen bearbeiten -> Pfad.
    a) Stellen Sie sicher, dass hier ein Eintrag für Ihr Java existiert.
    b) Stellen Sie sicher, dass dieser Eintrag höher (oder früher) liegt als alle anderen Java-Pfade in Ihrem @ path-Eintrag.

Hoffentlich sollte dies das Problem für Sie beheben.

IqbalHamid
quelle
0

Obwohl dies eine alte Frage ist, habe ich mir überlegt, der von @Steffen Opel gegebenen akzeptierten Antwort einige relevantere Informationen hinzuzufügen.

Es ist möglich, eine beliebige Anzahl von Versionen von 32-Bit-JDKs und 64-Bit-JDKs in einem 64-Bit-Windows-Betriebssystem zu installieren. Es ist auch möglich, 32-Bit- Eclipse und 64-Bit- Eclipse auf demselben Computer zu installieren . Damit jedoch eine dieser plattformbezogenen Eclipse - Versionen (in OPs mit 64-Bit- Eclipse ) ausgeführt werden kann, muss auf dem Computer eine für JDK konfigurierte „ Umgebungsvariable “ vorhanden sein. Dies kann (sollte getan werden), ohne die Datei eclipse.ini zu ändern .

Umgebungsvariablen

Um Java ohne Angabe des vollständigen Pfads auszuführen , muss der PATHUmgebungsvariablen der Speicherort der Datei java.exe hinzugefügt werden. Auch für einige andere Dienstprogramme von Drittanbietern ist eine JAVA_HOMEUmgebungsvariable erforderlich.

Normalerweise müssen Java-Entwickler immer JDK installiert haben (JRE ist in JDK enthalten). Und PATHist unter dem JDK-Installationsordner auf den Ordner " bin " eingestellt (in OPs Fall C: \ Programme \ Java \ jdk1.6.0_40 \ bin ), während er JAVA_HOMEauf den JDK-Installationsordner eingestellt ist (in OPs Fall C: \ Programme \ Java \ jdk1.6.0_40 ).

Hier hat OP nur 32-Bit-JDK, versucht aber, 64-Bit-Eclipse zu verwenden. Um das Problem zu beheben, muss das 64-Bit-JDK installiert werden. Und ändern Sie JAVA_HOME& PATH" Umgebungsvariablen " entsprechend dem Installationsort.

Hier sind die vollständigeren Schritte:

  • Laden Sie das 64-Bit-JDKx.x.x_xx herunter und installieren Sie es
  • Öffnen Sie dann den Windows Explorer, klicken Sie mit der rechten Maustaste auf das Computersymbol und wählen Sie

    Eigenschaften -> Erweiterte Systemeinstellungen .
    Das Fenster Systemeigenschaften wird geöffnet , und auf der Registerkarte " Erweitert " wählen Sie " Umgebungsvariablen ", um das Bearbeitungsfenster zu öffnen.

  • Unter dem Systemvariable Abschnitt Look für JAVA_HOMEVariablennamen und klicken Sie auf „ Bearbeiten “ -Button am unteren Bereich, wenn nicht vorhanden , klicken Sie „ Neu “ und geben Sie C: \ Programme \ Java \ jdk1.6.0_40 und auf OK klicken.

  • Wählen Sie dann die PATHVariable aus, klicken Sie auf " Bearbeiten " und fügen Sie sie hinzu %JAVA_HOME%\bin. nach vorne oder %JAVA_HOME%\binan das Ende der vorhandenen Zeichenfolge. Überschreiben Sie NICHT die vorhandene Zeichenfolge und klicken Sie auf OK -> OK -> OK, um den Vorgang abzuschließen.

Jetzt wird Eclipse ohne den Fehler geöffnet.

Hinweis:

  • Wenn jemand 32-Bit- Eclipse verwenden muss, lautet der Standard-JDK-Pfad C: \ Programme (x86) \ Java \ jdkx.x.x_xx

  • Wenn Sie PATHUmgebungsvariablen in Windows 10 ändern, wird ein zusätzliches Fenster angezeigt (siehe Abbildung unten).

Bildbeschreibung hier eingeben

Dush
quelle
0

Ich hatte das gleiche Problem, aber ich bekam die Lösung.

Überprüfen Sie, ob Eclipse 32 oder 64 Bit ist

  1. Wenn es sich um 32-Bit handelt, setzen Sie JAVA_HOME auf die 32-Bit-Version von jdk
  2. Wenn Eclipse 64-Bit ist, setzen Sie JAVA_HOME auf die 64-Bit-Version von jdk
Arjun Kushwah
quelle