Aby można było uruchomić Eclipse, musi być dostępne środowisko JRE lub JDK. Po przeszukaniu następujących lokalizacji nie znaleziono maszyny JVM

128

Eclipse nie może się otworzyć, używał eclipse wcześniej i otwierał się wcześniej bez problemu. Teraz pojawia się następujący komunikat o błędzie:

Aby można było uruchomić Eclipse, musi być dostępne środowisko Java Runtime Environment (JRE) lub Java Development Kit (JDK). Po przeszukaniu następujących lokalizacji nie znaleziono maszyny wirtualnej Java:

Dostałem zaćmienie, aby otworzyć się i pracować nad projektami wcześniej i nie otworzą się.

Oto zrzut ekranu tego, co wciąż otrzymuję:

wprowadź opis obrazu tutaj

David Smith
źródło

Odpowiedzi:

167

Możesz wyraźnie wskazać Eclipse, gdzie go znaleźć . Otwórz eclipse.inii dodaj następujące wiersze na początku pliku:

-vm
/absolute/path/to/jre6/bin

Aktualizacja : właśnie ustaliłem główną przyczynę na moim komputerze z systemem Windows. Instalator GlassFish skarżył się z dokładnie tym samym komunikatem o błędzie i po przekopaniu się na forach GlassFish, przyczyna była jasna: uszkodzona instalacja środowiska JRE na komputerze z systemem Windows. Mój JRE został dostarczony wraz z JDK, a instalator Java 6 JDK nie zainstalował poprawnie środowiska JRE. Brak pliku DLL w instalacji JRE JDK. Po ponownym zainstalowaniu samodzielnego środowiska JRE z http://java.com , nadpisując stary, instalator GlassFish kontynuował, a także Eclipse mógł bezbłędnie uruchomić się bez tych dwóch linii eclipse.ini.

BalusC
źródło
Która marka / wersja systemu operacyjnego? Która wersja Eclipse? Jaka jest Twoja ścieżka JRE?
BalusC
3
@DavidSmith działa dla mnie jak urok. Na komputerach z systemem Windows ścieżka wygląda następująco:C:\Program Files (x86)\Java\jre6\bin
Christoph
W dalszej części pliku ini może znajdować się inny argument -vm, który przesłania argument umieszczony na górze, wskazujący na maszynę wirtualną, która nie istnieje (np. Ponieważ Java zaktualizowała się i usunęła starą wersję). Jeśli tak, usuń późniejszą linię.
WBT
1
pamiętaj, że eclipse.ini może już mieć argument -vm. Jeśli tak, zastąp ścieżkę właściwą. Miałem ten problem po aktualizacji mojej JAVY.
rph
dodanie tego na końcu pliku .ini nie rozwiązało mojego problemu. Dodaj ten argument przed -vmargs i spróbuj ponownie.
cihata87
17

Zwykle dzieje się tak, ponieważ:

  • wskazałeś niewłaściwą ścieżkę jvm w swoim -vmargumencie: zobacz to pytanie SO, aby uzyskać konkretny przykład.
  • eclipse.iniGot uszkodzony w jakiś sposób (jeśli nie została zmodyfikowana, to nie jest to, ale jeśli ustawienie ścieżkę JVM nie działa, ... Chciałbym wymienić eclipse.inijeden pochodzące z nowej instalacji tylko aby się upewnić)
  • java, której wyszukiwanie zaćmienia domyślnie nie jest już dostępne (ponieważ $ PATH nie jest już aktualna)

Więcej szczegółów na stronie wiki „ Znajdowanie maszyny wirtualnej, używanie wywołania JNI lub uruchamianie języka Java

Nie określono -vm

W przypadku -vmokreślenia nie program uruchamiający szuka maszyny wirtualnej najpierw w katalogu jre w katalogu głównym eclipse, a następnie w ścieżce wyszukiwania.
Jeśli w którejś z lokalizacji znajduje się java, szukamy współdzielonej biblioteki jvm (jvm.dll w oknie, libjvm.so na platformach * nix) względem tego pliku wykonywalnego java.

  • Jeśli zostanie znaleziona biblioteka współdzielona jvm, ładujemy ją i używamy interfejsu API wywołania JNI, aby uruchomić maszynę wirtualną.
  • Jeśli nie zostanie znaleziona żadna biblioteka współdzielona jvm, uruchamiamy program uruchamiający java, aby uruchomić maszynę wirtualną w nowym procesie.

Jak wspomniano w „ Często zadawanych pytaniach Jak uruchomić Eclipse? ”:

Eclipse NIE sprawdza JAVA_HOMEzmiennej środowiskowej.

Więc sprawdziłbym twoją $ PATH, zaczynając od n nowej sesji powłoki (bez względu na twój system operacyjny), wpisując ' java -version', aby zobaczyć, czy nadal coś zwraca.

VonC
źródło
1
Wpadłem na ten sam problem, rozwiązałem problem z tą odpowiedzią i działa pod Ubuntu 12.04LTS
bakoyaro
12

Skopiuj javaw.exe z C: \ Program Files \ Java \ jre1.8 (lub) 1.6 (lub) 1.7 \ bin

wprowadź opis obrazu tutaj

i wklej go do folderu Eclipse, w którym znajduje się plik eclipse.exe. To wszystko.

wprowadź opis obrazu tutaj

user3438583
źródło
Działa, ale nadal wygląda jak włamanie, ale nie jest właściwym rozwiązaniem. Mimo to głosowano za.
supernowa
10

Miałem ten sam problem i problem polegał na tym, że miałem 32-bitową wersję Eclipse działającą na mojej 64-bitowej maszynie i chciałem mieć 32-bitową wersję JRE.

Zmieniłem Program Filesna Program Files (x86)w eclipse.inipliku tak:

-VM
C:Program Files (x86)\Java\jre6\bin

i to rozwiązało problem.

Możesz po prostu zainstalować 64-bitowe Eclipse, ale to zajmie się błędem.

user1205577
źródło
Ta odpowiedź. Moje zaćmienie pochodzi z pakietu OlimexODS i jest skonfigurowane do uruchamiania z 32-bitowym, mój JDK pochodzi z 64-bitowego pakietu Netbeans. Żaden z komunikatów o niepowodzeniu uruchamiania w żaden sposób nie wskazywał na problem z niezgodnością. Dobra, stara przenośna Java: napisz raz, awarię wszędzie Aby sprawdzić: jeśli twój eclipse.ini ma coś podobnego do plugins / launcher.win32.win32.x86, to jego 32-bitowa kompilacja. Jeśli wersja java z wiersza poleceń mówi coś w rodzaju 64-bitowej maszyny wirtualnej serwera Java HotSpot (TM) (wersja 24.51-b03, tryb mieszany), prawdopodobnie masz ten problem.
kert
9

Oto jak naprawiłem mój:

  1. znajdź lokalizację, w której jest zainstalowany jre. w moim przypadku znajdował się w C: \ Program Files \ Java \ jdk1.7.0_10

  2. skopiuj folder jre i wklej go tam, gdzie znajdują się pliki eclipse (gdzie znajduje się eclipse.exe).

podczas pobierania eclipse otrzymujesz pakiet .zip zawierający eclipse.exe i wszystkie inne pliki potrzebne do uruchomienia eclipse, ale brakuje w nim plików jre. więc wszystko, co musisz zrobić, to znaleźć folder jre na dysku twardym i dodać go do reszty pakietu eclipse.

QuadMachine
źródło
7

Czy zainstalowałeś Javę za pomocą automatycznej instalacji przeglądarki internetowej java.com? Jeśli tak, to twój problem! Musisz przeprowadzić instalację „ręczną”: http://www.java.com/en/download/manual.jsp

To tylko kwestia odpowiedniego dopasowania 32-bitowej wersji Eclipse / 32-bitowej Javy lub 64-bitowej Eclipse / 64-bitowej Javy. Wiele 64-bitowych systemów Windows ma 32-bitowe przeglądarki, a ta ostatnia jest wersją Javy, którą zapewni automatyczny instalator - a nie tym, czego chce 64-bitowe Eclipse.

user2221891
źródło
Uratuj mój dzień. Dzięki.
teapeng
5

Upewnij się, że ścieżka instalacyjna JDK znajduje się w zmiennej Path w systemie Windows.

Liam15
źródło
4

Mam ten problem, ponieważ odinstalowałem wersję jdk 13 i ponownie zainstalowałem jdk w wersji 8

Mimo że zaktualizowałem zmienne ścieżki eclipse nadal wybieram starą konfigurację.

Musisz edytować plik eclipse.ini znajdujący się w folderze, w którym znajduje się plik eclipse.exe .

wprowadź opis obrazu tutaj

Po prostu zaktualizuj ten plik najnowszą ścieżką, aby Eclipse mogło go odebrać

wprowadź opis obrazu tutaj

Gaurav khurana
źródło
3

To takie proste, dodaj tylko ścieżkę java, na przykład:

C: \ Program Files \ Java \ jdk1.8.0_121 \ bin

w zmiennej systemowej PATH

Fran Raga
źródło
3

Z podobnym problemem miałem do czynienia wcześniej w przypadku Eclipse i STS IDE

  • Sprawdź, czy w komputerze JDK/JREjest dostępna pogoda . Jeśli nie, zainstaluj JDK i skonfiguruj zmienne środowiskowe.
  • Nawet po kroku 1, jeśli nadal masz problem, nadszedł czas, aby ustawić argument vm w eclipse.inilub sts.ini w następujący sposób.
-vm 
C:Program Files (x86)\Java\jre8\bin
Sumanth Varada
źródło
2

Miałem również ten sam problem podczas tworzenia aplikacji na Androida za pomocą eclipse IDE. Rozwiązałem to, usuwając wszystkie instalacje Java (miałem java 6 i 7 zarówno) i ponownie zainstalowałem tylko jdk 7.

rashini
źródło
2

dodanie -vm C:/Program Files/Java/jdk1.6.0_29/bin/javaw.exe do pliku .ini pomogło mi.

Akash Gupta
źródło
4
Ja też. dodaj to przed -vmargs
Tom
2

Naprawiłem to, wykonując poniższe czynności,

1)

  1. Zaćmienie znajduje pliki wykonywalne JAVA z „C: \ ProgramData \ Oracle \ Java \ javapath”
  2. Struktura folderów będzie zawierała skróty do wprowadź opis obrazu tutajponiższych plików wykonywalnych, tj. java.exe ii. javaw.exe iii. javaws.exe
  3. Dla mnie ścieżki wykonywalne wskazywały na moją lokalizację folderu (ProgramFiles (x84))
  4. Poprawiłem to do ścieżki Program Files (64-bitowa) i problem został rozwiązany

Znajdź zrzut ekranu dla tego samego.

dreamdeveloper
źródło
2

Wystarczy dodać inne odpowiedzi:

Użytkownicy systemu Windows: Możesz podać ŚCIEŻKĘ do JRE w eclipse.ini oddzieloną znakiem „/” lub „\”. To nie ma znaczenia. Eclipse i tak go wybierze. Na przykład w moim systemie Windows każda ze ścieżek jest w porządku (oczywiście po -vm):

C: / Program Files / Java / jre1.8.0_181 / bin lub C: \ Program Files \ Java \ jre1.8.0_181 \ bin

Pawan Kumar
źródło
1

Zmień wartość vm w pliku eclipse.ini z poprawną ścieżką do twojego JDK, coś takiego,

-vm /Library/Java/JavaVirtualMachines/jdk-11.0.5.jdk/Contents/Home/bin

Ścieżka do eclipse.ini wygląda dla mnie mniej więcej tak,

/Users/tomcat/eclipse/jee-2018-09/Eclipse.app/Contents/Eclipse

Tom Taylor
źródło
1

Zdarza się to czasami, jeśli usuniesz Javę ze zmiennych ścieżki (celowo lub nieumyślnie). Aby ponownie ustawić zmienną PATH, dodaj pełną ścieżkę do katalogu jdk \ bin do zmiennej PATH. Zwykle pełna ścieżka to:

C: \ Program Files \ Java \ jdk-11 \ bin

Aby ustawić zmienną PATH w systemie Microsoft Windows:

  1. Wybierz Panel sterowania, a następnie System.
  2. Kliknij opcję Zaawansowane, a następnie Zmienne środowiskowe.
  3. Dodaj lokalizację folderu bin instalacji JDK do zmiennej PATH w zmiennych systemowych.
Golovkin
źródło
0

Miałem też ten problem na maszynie win7. Chciałem zaktualizować jre za pomocą jdk. Usunąłem więc folder jre, pobrałem i rozpakowałem nowy plik jdk. Problem polegał na tym, że ręcznie usunąłem folder jre, podczas gdy zamiast tego powinienem go odinstalować. Pozostawia to kilka wpisów rejestru, które nadal wskazują na stary jre. W jakiś sposób eclipse nadal chce używać starego jre. Nie mogłem odinstalować starej maszyny wirtualnej Java, ciągle otrzymuję ten błąd:

Błąd 1723. Wystąpił problem z tym pakietem Instalatora Windows. Nie można uruchomić biblioteki DLL wymaganej do ukończenia tej instalacji. Skontaktuj się z personelem pomocy technicznej lub dostawcą pakietu

Musiałem więc użyć tego narzędzia MS, aby naprawić odinstalowanie:

http://support.microsoft.com/kb/2438651/

Następnie musiałem ponownie zainstalować vm. Zainstalowałem w tym samym miejscu, w którym znajdował się oryginalny, aby uniknąć utraty kolejnej godziny! Po tym zaćmieniu zaczęło się poprawnie.

Julio

julioA
źródło
0

Właśnie miałem ten problem i naprawiłem go w ten sposób. Zauważyłem, że komunikat o błędzie zawiera jre, a nie jre6 lub jre7, więc skopiowałem jre6 z plików programu do folderu eclipse, a następnie zmieniłem jego nazwę z jre6 na jre, a potem zadziałało: p

robert mac
źródło
0

Newb poruszył się z mojej strony, ale zainstalowałem tylko JRE zamiast JDK . Zainstalowałem JDK i mój problem od razu zniknął.

EldritchText
źródło
0

Miałem ten problem i było to spowodowane włączaniem się mojego komputera z systemem Windows. Wszedłem do panelu sterowania -> system -> zaawansowane - zmienne środowiskowe.

Wyedytowałem zmienną PATH (która była już poprawnie ustawiona), NIC nie zmieniłem, kliknąłem OK, aby wrócić z ekranów.

Wtedy zaćmienie zadziałało. Nie mam pojęcia dlaczego, poza tym, że okna. Mam nadzieję, że to może komuś pomóc.

Bruce
źródło
0

Miałem ten problem; Naprawiłem to, przechodząc do

Komputer -> Właściwości -> Ustawienia zaawansowane -> Zmienne środowiskowe

W zmiennych systemowych znajdź zmienną o nazwie PATH.
-> Wybierz Edycja -> Na samym końcu zmiennej ścieżki wstaw ";" następnie dodaj ścieżkę do swojego JDK i umieść \ bin \ na końcu

Powinien zostać naprawiony.

Przykład:

Zmienna systemowa

C: \ Program Files (x86) \ Common Files ....... HP \ LeanFT \ bin

Ścieżka JDK

C: \ Programs Files \ Java \ jre1.8.0_121

Ostateczna ścieżka -

C: \ Program Files (x86) \ Common Files ....... HP \ LeanFT \ bin; C: \ Programs Files \ Java \ jre1.8.0_121 \ bin \

Źródła: https://www.java.com/en/download/help/path.xml

Stewart Moon
źródło
Nawiasem Common Files.......HP\LeanFT\binmówiąc, nie wszyscy mają ścieżkę. Nie potrzebujesz go do programowania w Javie.
OneCricketeer
0

To proste. Katalog bin JDK lub katalog bin JRE powinien znajdować się w zmiennej ścieżki Przykład: Katalog zainstalowanej Java: Załóżmy, że java jest zainstalowana w katalogu ' C: \ Program Files \ java \ Jdk1.8.0_144 ' Teraz możesz znaleźć katalog bin w ' C: \ Program Pliki \ java \ Jdk1.8.0_144 \ bin '

Przejdź do zmiennej środowiskowej użytkownika

Control Panel --> User Accounts --> User Accounts --> Change my environment variables

W wyskakującym okienku kliknij Ścieżka pod Zmienne użytkownika dla sekcji Kliknij przycisk Edytuj ... , a pojawi się kolejne okienko

Kliknij przycisk Nowy i wpisz C: \ Program Files \ java \ Jdk1.8.0_144 \ bin

Kliknij przycisk OK i ponownie przycisk OK w wyskakującym okienku Zmienne środowiskowe.

Teraz możesz bezbłędnie otworzyć swoje zaćmienie

Radhakrishnan
źródło
0

Znalazłem rozwiązanie, w którym Eclipse.ini lokalizacją była stara wersja Javy, a po aktualizacji nowej wersji java lokalizacja -vm

C:\Program Files\Java\jre1.8.0_201\bin

był taki sam, więc musiałem zmienić katalog na moją nową wersję Java.

Rozwiązaniem jest więc po prostu otwarcie najbardziej aktualnej wersji Javy i skopiowanie ścieżki do katalogu i zastąpienie jej w pliku Eclipse.ini.

Pruthvi Diu
źródło
0

Umiarkowanie przyszłościowy przykład dla systemów typu Linux. Zakładając, że javac jest zainstalowany i znajduje się na Twojej ścieżce.

./eclipse -vm dirname $(readlink -f $(which javac))

Spowoduje to znalezienie katalogu, w którym zainstalowano javac, i przekazanie jako argument vm do eclipse.

zero
źródło
0

Jeśli używasz systemu Linux (np. Ubuntu 18), spróbuj zainstalować (lub przeinstalować w twoim przypadku?) W default-jrenastępujący sposób:

sudo apt update
sudo apt install default-jre

Miałem ten sam błąd, gdy właśnie próbowałem uruchomić instalator Eclipse ( ./eclipse-inst) na nowym pobraniu Eclipse , a instalator nawet nie działał! Instalacja default-jrerozwiązała problem!

Źródło:

Gabriel Staples
źródło
0

W moim przypadku zmodyfikowałem plik eclipse.ini w innym celu, aby uwzględnić parametr -vm. To powodowało awarię. Usunąłem -vm i następujący po nim wiersz, w którym zawarłem \ bin i to rozwiązało problem.

Mahesh
źródło
-1

C: \ Program Files \ Java \ jre1.8.0_221 \ bin działało dla mnie

rubal islam
źródło
Wydaje się, że tak mówią liczne odpowiedzi (np. 1 , 2 , 3 ).
Wai Ha Lee