Podczas próby otwarcia Eclipse pojawia się wyskakujące okno dialogowe:
Nie udało się załadować biblioteki współdzielonej JNI „C: /JDK/bin/client/jvm.dll”.
Następnie siła Eclipse zamyka się.
Oto kilka kwestii, które chciałbym przedstawić:
- Sprawdziłem, czy coś istnieje na tej ścieżce. To istnieje.
- Zarówno My Eclipse, jak i Java SE Development Kit są 64-bitowe. Sprawdziłem mój system i może obsłużyć 64-bit.
- Szukałem tego problemu w Google i na przepełnieniu stosu, a jedyną odpowiedzią, jaką znalazłem, było pobranie 32-bitowych wersji JDK i Eclipse.
Pobieranie wersji 32-bitowych to coś, co chcę zrobić w ostateczności.
Co byłoby sugerowane, aby rozwiązać ten problem?
Odpowiedzi:
Potrzebujesz
64-bit
trio:64-bit
OS64-bit
Jawa64-bit
Zaćmienieźródło
Pary robocze systemów operacyjnych, JDK i Eclipse:
32-bit
OS |32-bit
JDK |32-bit
Eclipse ( tylko wersja 32-bitowa )64-bit
OS |32-bit
JDK |32-bit
Zaćmienie64-bit
OS |64-bit JDK
|64bit
Zaćmienie (tylko 64-bitowe )Miałem kilka zainstalowanych JDK i JRE.
Każdy z nich miał swój własny wpis w zmiennej PATH, wszystko działało mniej więcej.
Sądząc po zmiennych PATH, niektóre instalacje były całkowicie bezużyteczne, ponieważ nigdy nie były używane. Oczywiście do „nieaktywnego” języka Java można odwoływać się ręcznie z poziomu środowiska Eclipse, jeśli zajdzie taka potrzeba, ale nigdy tego nie zrobiłem, więc naprawdę ich nie potrzebowałem. (Przynajmniej tak myślałem w tym czasie ...)
Oczyściłem bałagan, odinstalowałem wszystkie obecne Java, zainstalowałem tylko JDK + JRE 1.7 64-bit.
Jedna z „instalacji” Eclipse zakończyła się niepowodzeniem z
Failed to Load the JNI shared Library
i podaną ścieżką w stosunku do świeżo zainstalowanego JDK tam, gdzie myślał, żejvm.dll
tak jest.Niepowodzenie Eclipse było jedynym ze wszystkich moich IDE, które wciąż były wersją 32-bitową w mojej konfiguracji, w przeciwnym razie wszystkie 64-bitowe.
Dodanie argumentów VM, jak często wspomniano, w
eclipse.ini
moim przypadku nie było sensu (ponieważ miałem tylko zły JDK / JRE, do którego mogłem się odnosić).Nie byłem również w stanie dowiedzieć się, jak sprawdzić, czy to Eclipse było wersją 32-bitową lub 64-bitową (nie mogłem sprawdzić w Menedżerze zadań , ponieważ ta „instalacja” Eclipse nie mogła się uruchomić. minęło trochę czasu, odkąd go skonfigurowałem, nie pamiętam też jego wersji).
Jeśli używasz nowszego JDK i starszego środowiska JRE, możesz mieć kłopoty, ale wtedy bardziej prawdopodobne jest
java.lang.UnsupportedClassVersionError
pojawienie się, IIRC .źródło
Upewnij się, że
eclipse.ini
plik zawiera następujące wiersze.Mój
eclipse.ini
na przykład:Użyj systemu operacyjnego i Eclipse zarówno w wersji 64-bitowej, jak i w wersji 32-bitowej
eclipse.ini
.Twój
eclipse.ini
plik można znaleźć w folderze Eclipse .źródło
-vm C:\Program Files\Java\jdk1.6.0_32\bin\javaw.exe
linię do mojego pliku eclipse.ini i wszystko zaczęło się dobrze. Dzięki za pomoc +1.Miałem ten sam problem
Rozwiązałem to, instalując 64-bitową maszynę JVM z
http://www.java.com/en/download/manual.jsp
źródło
Ten błąd oznacza, że architektura Eclipse nie jest zgodna z architekturą środowiska wykonawczego Java, tj. Jeśli jeden jest 32-bitowy, drugi musi być taki sam, a nie 64-bitowy.
Najbardziej niezawodną poprawką jest określenie lokalizacji JVM w eclipse.ini:
Ważne: Te dwie linie muszą znajdować się przed opcją -vmargs. Nie używaj cudzysłowów; spacje są dozwolone.
źródło
Inną opcją jest:
Utwórz skrót do Eclipse.exe. Otwórz skrót i zmień cel na:
Podczas instalacji upewnij się, że lokalizacje wskazują prawidłowy katalog instalacyjny Eclipse i właściwy
javaw.exe
katalog instalacyjny.(64-bitowe wersje Eclipse i Java muszą być oczywiście takie same).
źródło
Mam zainstalowanych wiele wersji Java, zarówno Sun JDK & JRockit, zarówno 32-bitowych, jak i 64-bitowych itp., I napotkałem ten problem ze świeżą instalacją 64-bitowego Eclipse dla Java EE (JUNO).
Co NIE działało:
64-bitowe trio, zgodnie z sugestią Petera Radera:
Używam 64-bitowego Eclipse w 64-bitowym systemie operacyjnym (Windows 7).
Zapewniłem, że Sun JDK 7 64-bit jest domyślną wersją Java. Kiedy wpisałem „java -version” z wiersza poleceń (cmd.exe), zwrócił się Sun JDK 7 64-bit ...
To nie rozwiązało problemu dla mnie.
Co DID działa:
Dodanie opcji -vm do eclipse.ini zgodnie z sugestią Jayesh Kavathiya:
Dodałem następujące do eclipse.ini:
Uwaga:
Nie musiałem odinstalowywać żadnej z różnych wersji JDK lub JRE, które mam na swoim komputerze.
źródło
W przypadku brakującego
jvm.dll
pliku możemy podać ścieżkę pliku dll weclipse.ini
pliku jakoWażne jest, aby usunąć wszelkie spacje na ścieżce i podwójne cudzysłowy. To zadziałało, kiedy usunąłem cytaty i spację.
Mam nadzieję, że to komuś pomoże.
źródło
Miałem podobny problem. Zostało to rozwiązane w następujący sposób.
Mam zainstalowane obie wersje Java, ale Eclipse nadal próbował używać wersji 32-bitowej.
źródło
Jasne, musisz mieć kompatybilną wersję JDK i Eclipse, ale musisz również dodać w
eclipse.ini
pliku poniższe wiersze:Ustaw je jako pierwsze dwa wiersze
eclipse.ini
pliku.źródło
Jak wspomniało już wielu ludzi, jest to problem 32-bitowy i 64-bitowy zarówno w środowisku Eclipse, jak i Java . Nie można pomieszać wersji 32- i 64-bitowej. Ponieważ Eclipse nie używa
JAVA_HOME
, prawdopodobnie będziesz musiał zmienić PATH przed uruchomieniem Eclipse, aby upewnić się, że używasz nie tylko odpowiedniej wersji Java, ale także 32- lub 64-bitowego pliku (lub zmodyfikuj plik INI, jak zauważył Jayath) .Jeśli instalujesz Eclipse z udziału firmy, powinieneś upewnić się, że wiesz, którą wersję Eclipse rozpakowujesz, i rozpakuj do odpowiedniego katalogu Program Files, aby śledzić, który jest, a następnie zmień ŚCIEŻKĘ (na stałe za pomocą ( Windows) Panel sterowania -> System lub zestaw
PATH=/path/to/32 or 64bit/java/bin;%PATH%
(może utworzyć plik wsadowy, jeśli nie chcesz go ustawiać w systemie i / lub zmiennych środowiskowych użytkownika) Pamiętaj, że 32-bit znajduje się w plikach programu (x86) .Jeśli nie jesteś pewien, po prostu uruchom Eclipse, jeśli pojawi się błąd, zmień PATH na inną „bitową” wersję Javy, a następnie spróbuj ponownie. Następnie przenieś katalog Eclipse do odpowiedniego katalogu Program Files .
źródło
Alternatywnie, pobierz tę samą „bitową” wersję JRE i Eclipse, a następnie utwórz nowy skrót z poniższym celem (zamień zainstalowane środowisko JRE i Eclipse / ścieżka):
To powinno wystarczyć.
źródło
Możesz rozwiązać ten problem, jak wiele innych replikowanych. Potrzebujesz Eclipse i JDK w wersji 32-bitowej lub obu w wersji 64-bitowej . Architektura systemu operacyjnego nie ma znaczenia, podczas gdy pozostałe pozostają w tym samym typie architektury.
źródło
Odpowiedzi nade mną tak mnie kusiły, że postanowiłem uruchomić na sucho wszystkie możliwe kombinacje z OS, Eclipse i trio JVM . W każdym razie, kto kopie i czyta mój post, sprawdź poniższe jako gorący punkt (jestem użytkownikiem systemu Windows 7).
Rozumiesz, że pliki programu i plik programu (x86) to dwa różne foldery ... x86 oznacza 32-bitową wersję programu, a pierwsza to wersja 64-bitowa.
Jeśli masz wiele wersji Java zainstalowanych z różnymi wersjami bitów i wydań, co prawdopodobnie stanie się z wieloma IDE open source , menedżerami, konsolami administracyjnymi, najlepszą opcją jest ustawienie argumentu VM bezpośrednio w
eclipse.ini
pliku. Jeśli tego nie zrobisz, Eclipse zwariuje i spróbuje przeszukać siebie, co nie jest dobre.źródło
Jednym z łatwych sposobów rozwiązania tego problemu jest skopiowanie
jre
folderu z zainstalowanego JDK do folderu instalacyjnego Eclipse. Upewnij się, że JDK, z którego kopiujesz, ma taką samą architekturę jak instalacja Eclipse.Musiałem w ten sposób skonfigurować moją maszynę, ponieważ na moim komputerze uruchamiam zarówno Eclipse, jak i Appcelerator Titanium Studio . Studio wymaga 32-bitowej wersji Java, a Eclipse wymaga wersji 64-bitowej.
źródło
Tak, po prostu upewnij się, że twoje wersje Eclipse i JDK są 64-bitowe. Tylko po to, aby upewnić się, że wszystko jest w porządku, odinstaluj JDK i zainstaluj go w Program Files, a nie w Program Files (x86) . Przynajmniej to rozwiązało mój problem.
źródło
Wystarczy sprawdzić zmienną środowiskową PATH. W oknie Mój komputer -> Właściwości -> Zaawansowane ustawienia systemu -> Zmienne środowiskowe -> (lewe górne okno „Zmienne użytkownika dla„ nazwy komputera ””) wystarczy sprawdzić zmienną PATH. Jeśli nie istnieje, utwórz go za pomocą następującego -> C: \ Program Files (x86) \ Java \ jre7 \ bin <-
Ten sam problem miałem po tym, jak zaktualizowałem Eclipse. Odkryłem, że ścieżka pyta o wersję 64-bitową, ale mam 32-bitową ścieżkę dif. To było dla mnie pomocne. PS: Mam 64-bitowy system operacyjny, 32-bitową wersję JRE i 32-bitową wersję Eclipse. Wszystko działa dobrze :)
źródło
Powinieneś odinstalować wszystkie stare [JRE] [1], a następnie zainstalować najnowszy ... Miałem ten sam problem i teraz go rozwiązuję. Ja:
Lepiej zainstaluj Jre 6 w wersji 32-bitowej. To naprawdę działa.
źródło
Pobrałem 64-bitową maszynę JVM z witryny i zainstalowałem ją ręcznie oraz zaktualizowałem zmienną ścieżki systemowej. To rozwiązało problem.
(x86) \ Java \ jre7”
źródło
Dziękuję misterfrb , zdałem sobie sprawę, że Eclipse podaje ten błąd, ponieważ właśnie zainstalowałem pakiet Oracle 10g Developer Suite i szukał
jvm.dll
pliku wC:\DevSuiteHome_1
folderze (musiałem ponownie zainstalować JDK wraz z pakietem dewelopera).Po usunięciu linii DevSuiteHome ze zmiennej paths i dodaniu lokalizacji korekty dla wersji 64-bitowej
jvm.dll
(nie jestem pewien, czy było to konieczne, nie próbowałem bez), Eclipse znów działało, a pakiet deweloperski nadal działa.źródło
Proste, mam 64-bitowy system operacyjny, 32-bitowe środowisko Eclipse i zarówno JDK 32, jak i 64 ... Właśnie odinstalowałem 64-bitowy JDK i Eclipse działa dobrze ..
źródło
Miałem ten sam problem po aktualizacji z Java 6 do Java 7. Po usunięciu Java 6 (64-bit) i ponownej instalacji Java 7 (64-bit), Eclipse działało. :)
źródło
Bardzo ważne jest dodanie parametru -vm i jego wartości w 2 liniach NA POCZĄTKU pliku eclipse.ini
-vm C: \ Program Files \ Java \ jdk1.7.0_45 \ bin \ javaw.exe
źródło
Chcę uprzedzić inne rozwiązanie tego błędu, szczególnie dla tych, którzy chcą używać 32-bitowego i 64-bitowego Eclipse w jednym systemie.
Eclipse uruchomi się przy użyciu JRE / JDK w
jre
podkatalogu, jeśli istnieje. (STE lub inne IDE oparte na zaćmieniu również obsługują tę funkcję ...)Rozwiązaniem jest utworzenie połączenia katalogu za pomocą
mklink.exe
polecenia istniejącego w Windows Vista lub nowszej wersji ( junction.exe oferuje podobną funkcję dla Windows 2000 / XP)Otwórz okna wiersza poleceń i wykonaj następujące polecenie:
Oczywiście, jeśli Eclipse jest dla 64-bitowego systemu Windows, architektura
JDK/JRE
musi być taka sama.Założyć:
Eclipse for windows x86_64
jest zainstalowany w d: \ devTool \ eclipseJDK for windows x64
jest zainstalowany w C: \ Program Files \ Java \ jdk1.8.0Poleceniem do utworzenia
jre
folderu będzie:BTW, usuń połączenie katalogu NIE usunie żadnego pliku. Jeśli utworzysz niewłaściwy link, możesz go usunąć za pomocą eksploratora plików lub
rmdir
polecenia.źródło
Upewnij się, że uruchamiasz Eclipse z uprawnieniami administratora.
źródło
Jeśli używasz całego 64-bitowego trio i nadal nie działa (doszedłem do tego problemu podczas uruchamiania monitora Android w programie Intellij Idea), prawdopodobnie używany jest niewłaściwy plik jvm.dll, w przeciwieństwie do tego, czego oczekuje Twoja Java. Wystarczy wykonać następujące kroki:
Znajdź plik jvm.dll w katalogu JRE:
C:\Program Files\Java\jre7\server\bin\jvm.dll
Znajdź plik jvm.dll w katalogu JDK:
c:\Program Files\Java\jdk1.7.0_xx\jre\bin\server\
Skopiuj
jvm.dll
dctory z JRE do katalogu JDK i zastąp jvm.dll w JDK.Na wszelki wypadek nie zapomnij wykonać kopii zapasowej. Nie trzeba instalować ani odinstalowywać niczego związanego z Javą.
źródło
To samo przyszło mi do głowy. Miałem 64-bitowe środowisko Eclipse, ale mój JDK był 32-bitowy. Więc zainstalowałem wersję 64-bitową i teraz jest OK.
źródło
Nie jestem pewien, dlaczego, ale zainstalowałem jre w moim katalogu c: \ windows oraz java.exe i javaw.exe w katalogu Windows \ system32.
Oczywiście katalogi te miały priorytet nawet PO dodaniu flagi -vm do mojego pliku eclipse.ini.
Usuń je stąd, naprawiłem problem.
źródło
Zmieniłeś odpowiednią wersję JAVA_HOME i PATH w zmiennych środowiskowych.
źródło
Na stronie pobierania Eclipse należy wpisać „JRE 32 bity” lub „JRE 64 bity”, a nie „Windows 32 bity” lub „Windows 64 bity”.
Pamiętaj, aby użyć poprawnej wersji zgodnej z twoim JDE, jak już wcześniej odpowiedziałem.
źródło