search
LoginSignup
0

posted at

updated at

Error: Could not create the Java Virtual Machine. の対応

以下のエラーメッセージが出た。

Error: Could not create the Java Virtual Machine. 
Error: A fatal exception has occurred. Program will exit.

調べてみるとjavaのバージョンが異なると表示されることがあるらしいエラーなのでバージョンを調べる。

$ java --version
openjdk 17.0.2 2022-01-18 LTS
OpenJDK Runtime Environment Corretto-17.0.2.8.1 (build 17.0.2+8-LTS)
OpenJDK 64-Bit Server VM Corretto-17.0.2.8.1 (build 17.0.2+8-LTS, mixed mode, sharing)

Corretto8などを使っていたのだが、事故ってローカル環境の色々なバージョンを最新のものにしてしまっていた。自分の場合バージョンをCorretto8に切り替えないといけない。
まずは何がインストールされてるか確認。

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
    17.0.2, x86_64:	"Amazon Corretto 17"	/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home
    1.8.0_322, x86_64:	"Amazon Corretto 8"	/Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home
    1.8.0_292, x86_64:	"AdoptOpenJDK 8"	/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home

あった。

/Library/Java/JavaVirtualMachines/amazon-corretto-17.jdk/Contents/Home
    1.8.0_322, x86_64:	"Amazon Corretto 8"	

切り替える。自分の場合は "1.8" で切り替えられた。

$ usr/libexec/java_home -v "1.8"
$ export JAVA_HOME=`/usr/libexec/java_home -v "1.8"`
$ PATH=$JAVA_HOME/bin:$PATH

バージョンを確認する。

$ java --version
Unrecognized option: --version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

一瞬びびったが、ここに書いてあるように、バージョンによってversionオプションが異なるらしい。
ハイフンを一個減らす。

$ java -version
openjdk version "1.8.0_322"
OpenJDK Runtime Environment Corretto-8.322.06.1 (build 1.8.0_322-b06)
OpenJDK 64-Bit Server VM Corretto-8.322.06.1 (build 25.322-b06, mixed mode)

この後最初のエラーも出なくなった。完。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0