LoginSignup
8
8

More than 3 years have passed since last update.

Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion' has value '1.8', but '1.7' is required.

Last updated at Posted at 2017-05-09

事象 : コマンド・プロンプトでJavaのバージョン確認をしようとしたら怒られた

  • 環境
    • Windows7 64bit
    • Windows10 64bit のパソコンではJAVA_HOMEで切り替えられました
      • JAVA_HOME : 1.7を指定
    • インストールしているJRE : 1.6 / 1.7 / 1.8(Eclipse 4.6 Neon 起動用)
    • 使っているEclipse : 4.3 Kepler / 4.6 Neon
  1. Javaのバージョンを切り替えた
  2. コマンド・プロンプトでJavaのバージョン確認
  3. エラー
> java -version
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion' has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.

原因

私的な理由
Eclipse 4.6 Neon を使うにはJRE1.8が必要だったから。

A Java 8 JRE/JDK is required to run all Neon packages based on Eclipse 4.6. The reasoning behind requiring Java 8 are discussed here.
Eclipse/Installation - Eclipsepedia

ちゃんとした理由
以下のサイトで丁寧に説明しています。

Java SE 8以降のパブリックJREで、環境変数PATHの設定を自分で行なわない(行なえない)レベルのユーザーへの対策が変わったため
WindowsでJDK 7とJDK 8を切り替える際の注意点 - Daregada (だれがだ)

対応方法

  • 前提
    • システム環境変数JAVA_HOMEに変更したいJREが指定されていること
    • システム環境変数PATHの[%JAVA_HOME%\bin]が含まれていること
  1. システム環境変数PATHの[%JAVA_HOME%\bin]より後ろに[C:\ProgramData\Oracle\Java\javapath]を移動する
  2. [C:\Windows\System32]直下の「java.exe」「javaw.exe」「javaws.exe」を削除する
    • :loudspeaker: 管理者権限が必要
  3. レジストリにあるJREの値をJAVA_HOMEのバージョンに書き換える
    • 変更対象 : HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
    • :loudspeaker: 書き換えるバージョンはマイナーバージョンまで指定しない
      • 「1.7.0_79」にしたらエラーメッセージのvalue '1.8',の部分がvalue '1.7.0_79',になった:skull:
      • 例 : エラーメッセージが以下の場合
      • Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion' has value '1.8', but '1.7' is required.
        • 変更前のJRE : 1.8
        • 変更後のJRE : 1.7
    • レジストリエディターの開き方&使い方 【Windows 7 10 8 Vista XP】 - Let's Emu!
8
8
0

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
  3. You can use dark theme
What you can do with signing up
8
8