オプション1:

オプション1:
  1. コンピューター上の古い Java 8 インストールをすべて削除しました。
  2. 最新のopenjdk 11をダウンロードしました参考:コンテンツを に抽出しましたC:\Program Files\Java\
  3. システム環境変数を設定しました

    JAVA_HOME = C:\Program Files\Java\jdk-11.0.1
    

    %JAVA_HOME%\binパスに追加されました。

  4. コマンドプロンプトでは> java -version次が返されます:

    Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'
    Error: could not find java.dll
    Error: Could not find Java SE Runtime Environment.
    
  5. なぜ?

答え1

動作させる方法:

Windows > スタート > cmd >

C:> for %i in (javac.exe) do @echo.   %~$PATH:i

または

C:> where java

次の内容を含むフォルダーを返しますC:\ProgramData\Oracle\Java\javapath:

  • java.exe
  • javaw.exe
  • javaws.exe

Windows ファイル エクスプローラーでこのフォルダーを参照し、すべて (上記の 3 つのファイル) を削除します。

cmdを閉じて再度開きます(Windows > スタート > cmd >)

C:> java -version

次のように返されるはずです:

openjdk バージョン "11.0.1" 2018-10-16

OpenJDK ランタイム環境 18.9 (ビルド 11.0.1+13)

OpenJDK 64 ビット サーバー VM 18.9 (ビルド 11.0.1+13、混合モード)

または、ダウンロードした Java リリース パッケージに応じて同様のものになります...

それは動作します!

答え2

私も同じ問題に遭遇しました。

確認方法:

  1. cmd を開き、「where java」(引用符なし) を実行します。
  2. Javaパスの出力が複数表示されるはずです。そのうちの1つは「C:\Program Files\Java\jdk-11.0.1\bin」に設定したパスで、他のパスは上記のパスになります。

の解き方:

オプション1:

他のJavaパスをすべて削除するだけです

オプション2:

環境変数の設定を確認し、%JAVA_HOME%\binを他のすべてのJavaパスの上に移動してください。

答え3

新しい Java ホーム パスをパスの末尾ではなく先頭に追加してみてください (例: %JAVA_HOME%\bin;(パスの残り))。これが最初に選択されます。私の場合はうまくいきました。

関連情報