web-dev-qa-db-ja.com

「システムはファイルC:\ ProgramData \ Oracle \ Java \ javapath \ Java.exeを見つけることができません」

Windows 8のJDK 8u25を使用していますが、Javaインストールで問題が発生しています。 javacを実行しても問題ありませんが、Javaを実行するとこのエラーメッセージが生成されます。

The system cannot find the file C:\ProgramData\Oracle\Java\javapath\Java.exe

どうすれば修正できますか?


問題は環境変数に関係していると思います。

私が設定した重要な変数は次のとおりです。

  • Java_HOMEC:\Program Files\Java\jdk1.8.0_25
  • CLASSPATH.;%Java_HOME%\lib
  • PATH<other paths omitted>;%Java_HOME%\bin

また、cmdのsetで表示される展開は次のとおりです。

  • Java_HOMEC:\Program Files\Java\jdk1.8.0_25
  • CLASSPATH.;C:\Program Files\Java\jdk1.8.0_25\lib;%CLASSPATH%;
  • PATHC:\ProgramData\Oracle\Java\javapath;C:\Program Files\Java\jdk1.6.0_45\bin;<other paths omitted>;C:\Program Files\Java\jdk1.8.0_25\bin

setの完全な出力は here で表示できます。

38
JavaBeginner

現在、解決に取り組んでいる同様の問題があります。他のソフトウェア(Eclipse Lunaの場合)に問題がある可能性があるため、これでエラーが解決するとは言えません。

Javaは、PATH変数で指定されたパスを使用しています。つまり、

  C:\ProgramData\Oracle\Java\javapath

このフォルダーに移動し(ProgramDataは非表示になっているため、必要に応じて再表示します)、Java.exeシンボリックリンクを右クリックします。 [ターゲット]フィールドに、Java.exeを探している場所が表示されます。以前のjdk1.6.0_45インストールのJava.exeファイルを指している可能性があります。ここに新しいショートカットを貼り付けるか、他の人が述べたようにPATH設定を変更します。

少なくとも1.8から1.7に移行するとき、Javaインストーラーがjavapathを変更したり、システムパスを更新したりしないことがわかりました。私の場合、ショートカットを変更しても、起動時にEclipseで問題が発生するだけでした。

編集:----- javapathフォルダーのショートカットで遊んだ後、少なくともEclipseの場合はシンボリックリンクが必要であることがわかりました。 Windowsでディレクトリシンボリックリンクを作成する方法 を参照してください。

ファイルシンボリックリンクに/ dスイッチは必要ありませんが、

  mklink Java.exe "C:\Program Files\Java\jdk1.8.0_20\bin\Java.exe"
  mklink javaw.exe "C:\Program Files\Java\jdk1.8.0_20\bin\javaw.exe"
  mklink javaws.exe "C:\Program Files\Java\jdk1.8.0_20\bin\javaws.exe"

これは今私のために動作します。

47
user2603432

OracleがJavaを指すのにこんなに貧弱な方法をとったのは、私を超えています。 JDKへの新しいリンクを作成して、この問題を解決しました

mklink /d C:\ProgramData\Oracle\Java\javapath "C:\Program Files\Java\jdk1.8.0_40\bin\"

必要なものがそれだけであれば、JREでも同じことが機能します。

これは、C:\ProgramData\Oracle\Java\javapathの古いシンボリックリンクを置き換えます(以前に存在した場合)

20
Vincent Risi

私はPATHにいました:

C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Java\jdk1.8.0_92\bin;<others omitted>

私は削除しました:

C:\ProgramData\Oracle\Java\javapath;

そしてそれは私のために問題を修正しました。 Java -versionはJavaバージョンなどの詳細を提供するようになりました。

7
Amit

これにより、Javaおよび環境変数に関連するすべての問題が解決されます。

  1. Windows ' Environment Variables dialog に進みます。
  2. システム変数で、Pathという名前の変数を選択します。クリック編集...
  3. 次のようなエントリを削除します。

    C:\ProgramData\Oracle\Java\javapath
    
  4. JDK/JREのbinフォルダーのパスを追加します。

  5. Java_HOMEを設定することを忘れないでください。
3
Jitesh Beniwal

PATH環境変数の更新

PATH変数を設定しない場合、実行するたびに実行可能ファイルへのフルパスを指定する必要があります。

C:\> "C:\Program Files\Java\jdk1.8.0\bin\javac" MyClass.Java


PATH変数を永続的に設定すると、再起動後も持続するので便利です。
PATH変数を永続的に設定するには、jdk1.8.0\binディレクトリの完全パスをPATH変数に追加します。通常、このフルパスは次のようになります
C:\Program Files\Java\jdk1.8.0\bin
Microsoft WindowsでPATH変数を次のように設定します

  • [スタート]、[コントロールパネル]、[システム]の順にクリックします。
  • [詳細設定]、[環境変数]の順にクリックします。
  • JDKインストールのbinフォルダーの場所をシステム変数のPATH変数に追加します。
    以下は、PATH変数の典型的な値です。

    C:\ WINDOWS\system32; C:\ WINDOWS; C:\ Program Files\Java\jdk1.8.0\bin

    注:

  • PATH環境変数は、セミコロン(;)で区切られた一連のディレクトリであり、大文字と小文字は区別されません。 Microsoft Windowsは、PATHディレクトリで左から右の順にプログラムを探します。

  • 一度に1つのパスにJDKのbinディレクトリを1つだけ持つ必要があります。最初のインスタンスに続くものは無視されます。

  • JDKパスを追加する場所がわからない場合は、追加します。

新しいパスは、PATH変数を設定した後に開く各新しいコマンドウィンドウで有効になります。

2
VdeX

Javaコマンドの実行中に同じエラーが発生しました。これを解決するために、パスの最初のエントリとしてJavaパスを移動し、問題を解決しました。参考のためにこのスクリーンショットをご覧ください:

enter image description here

1
Hari Tyagi
  1. JavaコントロールパネルからコンピューターにインストールされているすべてのJDKをアンインストールします
  2. C:\ProgramData\Oracle\Javaを検索し、そのディレクトリとその中に含まれるすべてのファイルを削除します。これはrmdir /S C:\ProgramData\Oracle\Javaを使用してコマンドラインから実行できます
  3. 次に、C:\ ProgramData\Oracleを検索し、Oracleフォルダーを削除します。 rmdir /S C:\ProgramData\Oracleを使用してこれを行うことができます
  4. JDKをインストールし、パスを設定します。

  5. プログラムを実行します。同じ問題はもう見つかりません。

1
Eshwarya

この問題は、jdkが自動的にアップグレードされないため、あるバージョンから別のバージョンにアップグレードするときに発生します。

同じために、環境変数を変更できます。システム変数でPATHを探し、jdk binの場所を文字列の前(後ろではなく)に追加します。 「Java」および「javac」が機能する場合、CMDでチェックインを完了します。動作する場合は、再度システム変数に移動します。 add "CLASSPATH"変数と設定値 "。c:\ Program Files\Java\jdk1.8.0_91\lib;"

1
Vandana

グループポリシーでかなり制限されている企業のPCを使用している場合、これは機能する可能性があります。

仮定して

  1. windows PATHにはC:\ProgramData\Oracle\Java\javapathが含まれます
  2. C:\Program Files\Java\jdk1.8.0_60\binにJDKがインストールされている

次に、次のテキストファイルmklink.batを作成し、デスクトップに配置します。

rem mklink.bat
mklink /d C:\ProgramData\Oracle\Java\javapath "C:\Program Files\Java\jdk1.8.0_60\bin"
pause

ここで右クリックして、「管理者として実行」を選択します。管理者の資格情報を提供します。スクリプトは成功を報告するはずです。これで、Javaをコンパイルまたは実行できます。

1
roblogic

PATH VARIABLEjdk1.6.0_45およびjdk1.8.0_25には2つのバージョンのjdkがあります。すなわち、最初のものを削除してみてください。 PATHからのjdk1.6.0_45

1
Johny

これは通常、Javaを更新するときに発生します。これを解決する最も簡単な方法は、JDKをアンインストールしてから再インストールすることです。注:これはパスまたはクラスパスを削除しないため、心配する必要はありません。

1
Rajat

心配しないで。 jdkおよびjdkの更新をアンインストールするだけ以下を設定します、

Java_HOME
CLASSPATH
PATH
JRE_HOME ( is optional)
0
Abhishek D K

Path変数から「C:\ ProgramData\Oracle\Java\javapath\Java.exe」を削除し、jdk binパスを追加してください。それが動作します。

私の場合、上記のパスを削除し、「C:\ Program Files\Java\jdk1.8.0_221\bin」であるJDKパスを追加しました

0
Gowtham Epparla

c:\ProgramData\Java\javapathはシンボリックリンクに使用されます。もちろん、Java Pathに%PATH%へのフルパスを追加できますが、上記の場所へのパスへのシンボリックリンクを作成することもできます。

  1. CMDを管理者として開きます。
  2. タイプmklink Java.exe(Java.exeへのフルパス)例

mklink Java.exe "C:\Program Files\Java\jdk1.8.0_25\bin\Java.exe"

0
Martin Carr

許可されていないアカウントからJava8をインストールした後も同じ結果になりました。修正するには、単に管理者ユーザーアカウントから再インストールしました。これにより、Java exeへのファイルリンクを含む引用符付きディレクトリが作成されました。

0
john godfrey

また、JDK 1.8をアンインストールする必要があり、jdk 1.7が必要になるという同様の問題がありました。私がやったことは、javapathからシンボリックリンクを削除してから、Java、javaw、javawsのショートカットをbinディレクトリからjavapathフォルダにインポートしました。ただし、エンタープライズラップトップで、このディレクトリを変更/更新する権限を持っていない権限の問題がいくつか見つかりました。管理者から適切な許可を与え、そこで解決しました。

0
Murari Goswami

Java JavaPathフォルダーの新しいバージョンの場所

64ビットOS

"C:\Program Files (x86)\Common Files\Oracle\Java\javapath\"

X86

"C:\Program Files\Common Files\Oracle\Java\javapath\"

0
Abhigna

2つ以上のPATH変数が必要です。セミコロン(;)を使用して、それらすべてを1つにマージしてみてください

0
Farrukh Chishti