Błąd: nie można utworzyć wirtualnej maszyny języka Java w systemie Mac OSX Mavericks

133

Właśnie zainstalowałem najnowszy Java SDK 7-67 firmy Oracle na komputerze Mac 10.9.4. Następnie uruchomiłem polecenie java -vw Terminalu i otrzymałem tę wiadomość:

Błąd: nie można utworzyć wirtualnej maszyny języka Java.
Błąd: wystąpił krytyczny wyjątek. Program zostanie zamknięty.

user1574598
źródło
Którą wersję Java pobrałeś i zainstalowałeś, 32-bitową czy 64-bitową?
Raf

Odpowiedzi:

299

Zwykle ten błąd występuje, gdy wywołujesz java, podając niewłaściwe argumenty / opcje. W takim przypadku powinna to być versionopcja.

java -version

Tak więc, aby sprawdzić dwukrotnie, zawsze możesz to zrobić java -helpi sprawdzić, czy opcja istnieje. W takim przypadku nie ma takiej opcji jak v.

BatScream
źródło
15
jeśli jest to problem z poleceniem lub (argumentem), powinien wywołać inny błąd! Brak komunikatu „Nie można utworzyć wirtualnej maszyny języka Java”.
Raf
2
Jeśli dziennik jest pełny, możesz zobaczyć: Nierozpoznana opcja: -v Błąd: nie można utworzyć wirtualnej maszyny języka Java. Błąd: wystąpił krytyczny wyjątek. Program zostanie zamknięty.
BatScream
3
Dzięki wszystkim - tak, przepraszam, właśnie zauważyłem pierwszą linię, w której jest napisane, że jest to nieprawidłowy argument. Java -versiondziała teraz. Po prostu zainstalowałem coś o nazwie node.jsi aby sprawdzić jego wersję, po prostu wymaga -v. Pomyślałem, że mógł to być ogólny argument.
user1574598
5
Dziękuję Ci za to. Spędziłem 15 minut, szukając różnych przyczyn niepowodzenia ładowania maszyny wirtualnej, ponieważ --versionzamiast tego pisałem -version. I tak, co za kompletnie śmieciowy komunikat o błędzie -_-;
Gavin
1
„Właśnie zainstalowałem coś o nazwie node.js”. ~ 5 lat później wygląda to okropnie uroczo.
Nnanyielugo
2

jeśli próbowałeś uruchomić javaz -versionargumentem i nawet jeśli problemu nie można rozwiązać w żaden sposób, być może zainstalowałeś wiele wersji Java, takich jak JDK 1.8 i JDK 1.7 w tym samym czasie.

Spróbuj więc odinstalować wszystkie inne wersje niż ta, której potrzebujesz , a następnie ustaw JAVA_HOMEzmienną ścieżki dla pozostałego JDK i gotowe.

Amaresh HD
źródło
Tak, ze względu na instalację wielu wersji, ale jak mogę odinstalować inną wersję. Czy możesz w tym pomóc?
Kiran Patel
1

Nierozpoznana opcja: - Błąd: nie można utworzyć wirtualnej maszyny języka Java. Błąd: wystąpił krytyczny wyjątek. Program zostanie zamknięty.

Otrzymałem ten błąd z powodu nieprawidłowej składni używanej w terminalu. Używałem wersji java. Ale w rzeczywistości jest to wersja java. nie ma spacji między - a wersją. możesz również sprawdzić krzyżowo, używając java -help.

Mam nadzieję, że to pomoże.

Rahul
źródło
1

Spróbuj więc odinstalować wszystkie inne wersje niż ta, której potrzebujesz, a następnie ustaw zmienną JAVA_HOMEpath dla pozostałego JDK i gotowe.

To zadziałało dla mnie, mam dwa JDK (wersja 8 i 11) zainstalowane na moim lokalnym Macu, co powoduje problem, aby odinstalować, wykonałem te dwa kroki:

  • cd / Library / Java / JavaVirtualMachines
  • rm -rf openjdk-11.0.1.jdk
Jiangtao Liu
źródło
0

Może być jeszcze jeden powód takiego zachowania - usuwasz bieżący katalog roboczy.

Na przykład:

# in terminal #1
cd /home/user/myJavaApp

# in terminal #2
rm -rf /home/user/myJavaApp

# in terminal #1
java -jar myJar.jar

Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Alex Povar
źródło
0

Spróbuj: java -version, a jeśli zobaczysz java 11

spróbuj usunąć za pomocą terminala: cd / Library / Java / JavaVirtualMachines rm -rf openjdk-11.0.1.jdk

jeśli nie spróbuje usunąć ręcznie: 1) kliknij wyszukiwarkę 2) przejdź do folderu 3) opublikuj / Library / Java / JavaVirtualMachines 4) usuń java 11.

następnie wypróbuj wersję java, a zobaczysz: wersja java „1.8.0_191”

Tal Hakmon
źródło