「Java 仮想マシンの作成に失敗しました」エラーに対する 11 の修正
今日に至るまで、Java は人気のあるプログラミング言語です。時代遅れかもしれませんが、時間が経ってもその人気と有用性は失われません。現在も開発が活発に行われており、多くの開発者によって使用されています。言語の変更と改良が定期的に開発され、Java ベースのアプリケーションのコンパイルと実行が容易になります。
Java とは簡単に言うと何ですか?
Java は、さまざまなオペレーティング システムやデバイスで使用できる、広く使用されているプログラミング言語です。Web 開発、モバイル アプリケーション、デスクトップ アプリケーション、サーバー サイド プログラミングなど、多くのアプリケーションがあります。
Java は、その言語で書かれたコードを実行するための仮想マシン (VM) を作成します。Java 仮想マシンが処理しているデータまたはコードに問題が発生した場合、Java 仮想マシンは起動に失敗する可能性があります。
Java仮想マシンエラーとは何ですか?
Java 仮想マシン エラー (JVM エラーとも呼ばれます) は、Java 仮想マシンが生成するエラーの一種です。このエラーは通常、コンピュータがコードを読み取れない、または理解できないことを示します。
このエラーは、コンピュータに必要なアップデートがインストールされていない場合や Java と互換性がない場合など、さまざまな理由で発生する可能性があります。コンピューターの使用中に JVM に関する問題が発生した場合、その問題を解決する方法を理解することが非常に重要です。
ここ数日間、一部のお客様に「Java 仮想マシンの作成に失敗しました」というエラー メッセージが表示されていることがわかりました。私たちの調査によると、この問題は通常、ユーザーが Java ベースのプログラムを実行しようとしたときに発生します。
「Java 仮想マシンの作成に失敗しました」エラーの原因は何ですか?
この問題が発生する条件はいくつかあります。
- Java が不正な引数またはオプションで実行される: 自作プログラムを実行する場合、またはシステムの不安定性を引き起こすことが知られているオープン ソース アプリケーションを開こうとした場合。
- Java グローバル最大ヒープ メモリが不十分: この問題の最も一般的な原因の 1 つは、システム変数で指定された最大ヒープ メモリ サイズより大きい最大ヒープ メモリ サイズで Java アプリケーションを実行しようとすることです。
- Java 実行可能ファイルやプログラムには管理者の資格情報が必要です。これは、適切に機能するために管理者アクセスが必要なアプリケーションで発生する可能性があります。
「Java 仮想マシンを作成できませんでした」問題を解決する方法を見つけようとしている場合、この記事では実証済みの解決策をいくつか紹介します。以下は、同様のシナリオにある他の人が問題を解決するために使用した解決策のリストです。
最良の結果を得るには、特定の状況に適した解決策が見つかるまで、以下の解決策を提示された順序で試してください。
Java仮想マシンのエラーを修正するにはどうすればよいですか?
Java 仮想マシンのエラーを修正する解決策は次のとおりです。
- _JAVA_OPTIONS をシステム変数に追加する
- 管理者権限でjava.exeを開く
- Javaを再インストールする
- コードによるバグの修正
- Eclipse.ini ファイルの編集
- 互換性のある Java バージョンを確認する
- パスおよび Java ホーム環境変数を更新します。
- 起動引数を確認する
- 構文のチェック
- メモリ割り当てを確認する
- JVM (Java 仮想マシン) の RAM 割り当てを増やす
それぞれの解決策を個別に検討してみましょう。
解決策 1: _JAVA_OPTIONS をシステム変数に追加する
影響を受けた顧客のほとんどは、_JAVA OPTIONS という名前の Java システム変数を Xmx512M に変更することで問題を解決できました。これにより、Java の最大メモリ ヒープ サイズがグローバルに効果的に決まります。
これにより、システム変数で定義された最大ヒープ メモリ サイズが Java 起動アプリケーションで設定された最大ヒープ メモリ サイズよりも大きいため、エラー メッセージが表示されなくなります。同じ問題を抱えている何人かのお客様は、以下の手順に従った後、問題が完全に解決されたと述べています。
グローバル最大ヒープ メモリ サイズを増やすには、次のように _JAVA OPTIONS 要素をシステム変数に追加します。
1. [ファイル名を指定して実行] ダイアログ ボックスを開くには、Windows キー + R を押します。次に、[システム プロパティ] ページを開くには、「sysdm.cpl」と入力して Enter キーを押します。
2. 「詳細」タブをクリックし、「システムのプロパティ」ページで「環境変数」を選択します。
3. 「環境変数」フィールド (「システム環境変数」の下) で「新規」をクリックします。
4. [新しいシステム変数] パネルで変数名を _JAVA OPTIONS に、変数を -Xmx512M に設定し、[OK] をクリックして変更を保存します。
5. 変更を有効にするには、以前に開いていたウィンドウをすべて閉じて、コンピュータを再起動します。
6. 次回実行時に「Java 仮想マシンの作成に失敗しました」というエラーが発生したプログラムを開いて、正しく動作するかどうかを確認します。
プログラムの実行時に同じエラー メッセージが引き続き表示される場合は、Java ごみ箱のパスを環境変数に追加してみてください (「%\USER PATH\Java\jdk1.6.0_39\bin」など)。
解決策 2 – 管理者権限で java.exe を開く
同じ問題を抱えている何人かの人が、メインの Java 実行可能ファイル (java.exe) を管理者として強制的に開くことで問題を解決できました。
この更新をメインの Java 実行可能ファイルと、エラー メッセージを表示するプログラム実行可能ファイルの両方に適用した後、問題が解決されたと複数のユーザーが報告しました。
以下にすべてについて簡単に説明します。
1. ファイル エクスプローラーで Java のインストール場所に移動します。Java 実行可能ファイル (java.exe) のメインの場所に移動する必要があります。
デフォルトでは、Program Files/Java/*JRE build version*/bin フォルダーに存在する必要があります。使用している Java ランタイム環境に応じて、正確な位置は異なります。
2. java.exe ファイルを右クリックし、コンテキスト メニューから [プロパティ] を選択します。次に、「互換性」タブで「このソフトウェアを管理者として実行する」を選択し、(設定の下の)ボックスにチェックを入れます。変更を保存するには、「適用」をクリックします。
3. アプリケーションの実行可能ファイル (エラーの原因となったもの) を右クリックして手順を繰り返します。 [アプリケーション] > [互換性] > [管理者としてこのソフトウェアを実行]。
4. プログラムを実行して、問題通知が解決されたかどうかを確認します。
管理者権限が不十分な場合も、Java 仮想マシンで問題が発生する可能性があります。その結果、一部のユーザーは Java 管理者権限を付与する必要がある場合があります。
ユーザーは上記の手順に従って、Windows 10 で Java 管理者アクセスを許可できます。
解決策 3: Java を再インストールする
場合によっては、Java が正しくインストールされなかったり、時間の経過とともにインストールが破損したりすることが原因で問題が発生することがあります。そのため、Java を完全にアンインストールした後、この時点で再インストールします。このため:
1. ファイル名を指定して実行プロンプトに入るには、Windows キー + R を押して「Appwiz.cpl」と入力するか、コントロール パネルに直接移動します。
2. Enter キーを押すと、[プログラムと機能] 画面が表示されます。
3. Java が見つかるまで、「プログラムと機能」画面でインストールされているアプリケーションのリストをスクロールします。
4. システムから削除するには、それを右クリックして [削除] を選択します。
5. まずメインの Java インストールをアンインストールし、次にアップデートや他のバージョンを含む追加の Java インストールをすべてアンインストールします。
6. すべてのソフトウェアを削除した後、コンピュータを再起動します。
7. 再起動後、このページに移動し、最新の JRE をダウンロードします。
8. 問題がないか確認します。
9. 問題が解決しない場合は、ここにアクセスして最新の JDK を入手してインストールしてください。
10. すでに JDK を使用している場合は、別のバージョンにアップグレードするか、JDK に付属する JRE を削除することを検討してください。
解決策 4: コードのバグを修正する
このエラーは、コードに特定のエラーがある場合など、さまざまな理由で発生する可能性があります。ここではその一部を見ていきます。
ハイフンを削除する: コード内の 2 つのハイフン「-」を 1 つのハイフン「-」に置き換えると問題が解決したと報告するユーザーもいます。次のシナリオを考えてみましょう。
コードを変更します:
“sony@sony-VPCEH25EN:~$ java –version
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Unrecognized option: –version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. The program will exit.”
に
“sony@sony-VPCEH25EN:~$ java -version
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Unrecognized option: –version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. The program will exit.”
-Djava.endorsed.dirs=”C:\Program Files\Apache Software Foundation\Tomcat 8.5\endorsed”
「-vm」エントリが eclipse.ini ファイルの vm 引数の上に追加されていることを確認してください。それ以外の場合、env vars は JVM V6 を選択します。
Ubuntu を使用している場合は、Java 8 のみがサポートされていることに注意してください。結果として、3 番目のアプローチが使用されます。現在の Java をアンインストールした後、古いバージョンの Java をインストールします。
解決策 5: Eclipse.ini ファイルを編集する
この問題を解決するには、Eclipes.ini ファイルを変更します。設定に関しては対処が必要な問題がいくつかある可能性があるため、さまざまな問題に分けて説明しました。状況に最も適したものを選択してください。
メモリ使用量の削減
1. メモ帳を使用して、Eclipse フォルダー内の Eclipse.ini ファイルを開きます。
2. 「-Xmx256m」のような行を探します (-Xmx1024m または -Xmx 512m の可能性があります)。
3. ここで、コンピュータにインストールされている RAM に応じて、デフォルトの容量をより適切な数値に変更し、バージョン番号を追加します。次のシナリオを考えてみましょう。
-Xmx512m
-Dosgi.requiredJavaVersion=1.6
OR
-Xmx512m
-Dosgi.requiredJavaVersion=1.7
OR
-Xmx512m
-Dosgi.requiredJavaVersion=1.8
4. 「-launcher.XXMaxPermSize」行から数字「256m」を削除します。
5. 問題が存在するかどうかを確認します。
いじっています
1. 可能であれば、ファイルから次の行を削除します。
-vm P:\Programs\jdk1.6\bin
2. 以下の行も変更します。
set -Dosgi.requiredJavaVersion=1.5
に
set -Dosgi.requiredJavaVersion=1.6
3. また、「-vmargs!」行に次の行を追加してみてください。
-vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
4. また、次の行を使用して JVM.dll を参照します。
-vm
C:\Program Files\Java\jre7\bin\client\jvm.dll
5. 「-vmargs」を Eclipse ファイル内の javaw.exe へのパスに置き換えます。次のシナリオを考えてみましょう。
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813
-product
com.android.ide.eclipse.adt.package.product
--launcher.XXMaxPermSize
256M
-showsplash
com.android.ide.eclipse.adt.package.product
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
**-vm “c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe”**
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-Declipse.buildId=v21.1.0-569685
6. 最後に次の行を追加して、役立つかどうかを確認することもできます。
-vmargs
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
7. eclipse.ini から次の行を削除することで問題が解決するかどうかも確認してください。
-XX:+UseStringDeduplication
-XX:+UseG1GC
問題が解決しない場合は、eclipse.ini ファイルを消去してみてください。これで問題が解決した人もいるようですが、必要に応じて事前にバックアップが作成されます。また、Java を開始する前に、電力を大量に消費するアプリケーションをすべて閉じて、十分なリソースが利用可能であることを確認してください。
JDKの破損をチェックしています
1. 「ファイル名を指定して実行」プロンプトを起動するには、Windows + R を押して「cmd」と入力します。
2. 次のコマンドがエラーを返すかどうかを確認します。
c:>\ java -version
3. 問題が発生した場合は、JDK を完全に再インストールします。
解決策 6 – 互換性のある Java バージョンを確認する
コードが IDE でコンパイルされると、「Java 仮想マシンの構築に失敗しました」というメッセージが表示されます。これは、IDE がコンピュータにインストールされている Java のバージョンと互換性がないためです。
IDE がサポートしている Java のバージョンを確認してください。次に、どの Java がインストールされているかを確認し、サポートされているバージョンと比較します。正しいバージョンがまだインストールされていない場合は、インストールします。
解決策 7 – パスと Java ホーム環境変数を更新する
Windows 10 では、環境変数に Java オプションを設定すると、「Java 仮想マシンの作成に失敗しました」というエラーが発生する場合があります。
1. ファイルエクスプローラーを開きます。
2. 以下をコピーして、アドレス バー エクスプローラー シェルに貼り付けます:::{BB06C0E4-D293-4f75-8A90-CB05B6477EEE}
3. 左側のペインで、「システムの詳細設定」を選択します。
4. ドロップダウン メニューから「詳細」オプションを選択します。
5. 「システム環境変数」セクションで、「環境変数」を選択し、次に「新規」を選択します。
6. 名前フィールドに「_JAVA OPTIONS」と入力します。
7. パス/値フィールドに「-Xmx1024M」と入力します。
8. 「OK」をクリックします。
9. アプリケーションを再起動します。
また、Java SDK に正しいパスが指定されていることを再確認する必要があります。
1. File Explorer\Java の C:\Program Files に移動します。
2. 使用する JDK バージョンのフォルダーを開きます。
3. フォルダーへのパスをコピーする必要があります。
4. 環境内の変数 (前の手順を参照)。
5. システム環境変数メニューから JAVA HOME を選択します。
6. [変更]を選択します。
7. コピーしたパスを入力した後、「OK」をクリックします。
解決策 8 – 起動引数を確認する
初期設定を確認してください。正しいバージョンの Java がインストールされている場合でも、起動オプションによってコンパイルに使用されるバージョンが変更される可能性があります。インプレース Java アップグレードを実行した場合は、起動オプションが以前のバージョンのままである可能性があります。
解決策 9 – 構文を確認する
入力するオプションの構文が正しいことを確認してください。「Java 仮想マシンを作成できませんでした」という問題は、ほんの小さな間違いによっても発生する可能性があります。余分なハイフンまたは間違って指定されたバージョンを探してください。
解決策 10 – メモリ割り当てを確認する
使用するために割り当てられたメモリが不十分であることが、Java 仮想マシンの作成に失敗する問題の主な原因の 1 つです。
1. ファイルエクスプローラーを開きます。
2. C:\Program Files\Java フォルダに移動します。
3. インストールされているバージョン番号の JDK フォルダーを開きます。
4. jvisualvm.exe ファイルを見つけて実行します。
5. ソフトウェアは、メモリ管理のためのグラフィカル ユーザー インターフェイスを提供します。
6. メモリの量を増やして再試行します。
解決策 11 – JVM (Java 仮想マシン) の RAM 割り当てを増やす
これらの変更を行うには管理者権限が必要です。
1. Windows キーと Pause Break ボタンを同時に押します。
2. 表示される新しいウィンドウで、「システムの詳細設定」を選択します。
3. 表示される「システムのプロパティ」ウィンドウの下部にある「環境変数」ボタンをクリックします。
4. 環境変数ウィンドウが表示されます。「システム環境変数」セクションの「新規」ボタンをクリックします。
5. 新しいシステム変数のウィンドウが表示されます。ギャップを適切な値で埋めます。
- _JAVA OPTIONS は変数名です。
- -Xmx512M は可変値です。
6. 「OK」をクリックします。
6. 「環境変数」セクションの「OK」ボタンをクリックします。
結論
開発環境のセットアップには長い時間がかかる場合があります。コードを作成またはコンパイルする前に、多くのことを設定し、多くの前提条件を満たす必要があります。これらの問題は Java に固有のものではありません。各言語には、使用する前に満たさなければならない独自の前提条件があります。
コメントを残す