web-dev-qa-db-ja.com

Javaは「エラー: `C:\ Program Files \ Java \ jre6 \ lib \ AMD64 \ jvm.cfg 'を開けませんでした」を示します。"

何年も正常に動作した後、JVMを起動しようとすると、突然このメッセージが表示されます。

Error: could not open `C:\Program Files\Java\jre6\lib\AMD64\jvm.cfg'

アンインストールを試みましたが、DLLが見つからない(指定されていません)再インストールを試行しましたが、すべて無効です。

同時に、Scalaを開始しようとすると、

\Java\jdk1.6.0_25\bin\Java.exe was unexpected at this time.

チェック済み%Java_HOME%および%path%-両方ともOK

誰でも助けることができますか?

35
Highland Mark

わずかに異なる原因の可能性がありますが、2番目の問題は、Win7(x64)のscala 2.9.0.1で発生しますが、scala-2.9.1.finalはこの問題をすでに解決しています。

\Java\jdk1.6.0_25\bin\Java.exe was unexpected at this time.

%Java_HOME%は次のようなパスに設定されます:c:\program files(x86)\Java\jdk...

スペースと括弧に注意してください。

%SCALA_HOME%\bin\scala.batの24行目を次から変更した場合:

if exist "%Java_HOME%\bin\Java.exe" set _JAVACMD=%Java_HOME%\bin\Java.exe

if exist "%Java_HOME%\bin\Java.exe" set "_JAVACMD=%Java_HOME%\bin\Java.exe"

正常に動作します。 setコマンドのパラメーターを囲む引用符に注意してください。これにより、変数の値にスペースと「特殊」文字(スペースや括弧など)が適切に囲まれます。

これが他の誰かが答えを探すのに役立つことを願っています。

16
Clinton

環境変数-Java_HOME&PATHを確認しましたが、これらはすべてC:\ Javaを参照しています。それで少しイライラしました。しばらくして、デフォルトのインストールでもJava.exe、javaw.exe、およびjavaws.exeがC:\ Windows\System32にコピーされていることがわかりました(つまり、JREのアンインストールはうまくいきませんでした)。私はそれらを取り除いて、出来上がり、私は軌道に乗っています。その迷惑なエラーはもう現れません。

これは私のために働く

つまり、存在する場合は、System32からJava.exe、javaw.exe、およびjavaws.exeを削除します

pATHの先頭に%Java_HOME%\ binを置きます。

33
deskmore

私は同じ問題を抱えていました。64ビットのWindowsがあり、CMDコンソールで「Java -version」と入力すると、同じエラーメッセージが表示されました。 64bit-cmd(C:\ Windows\SysWOW64\cmd.exe)を起動しようとすると、そこで動作することがわかります;)

8
serganm

これが以前に機能していた場合、PATHがもう正しくないことを意味します。

PATHが長くなりすぎて切り捨てられた場合に発生する可能性があります。
すべての投稿( this one など)は PATHの更新 を提案します。最小パスを確認し、Javaが再び機能するかどうかを確認します。


最後に、 OP Highland Mark 結論:

最後に、Javaをアンインストールし、レジストリからJavaへのすべての参照を削除してから再インストールすることで修正しました。

怖い;)

2
VonC

「エラーはlib\AMD64\jvm.cfgを開けませんでした」という同じ問題の解決方法を共有すると思いました。 JavaランタイムJre7にはlibの下にAMD64フォルダーがありません。ただし、jreフォルダーとAMD64を持つ1.7.0_25 JDKがあります。

Jre7フォルダーの元の内容をバックアップファイルに移動し、1.7.0_25\jreからすべてをコピーしました。

現在、このエラーは発生しておらず、シーンビルダーを続行できます。

2
user2668741

ある日から別の日まで、突然同じ問題が発生しました

Failed to load the JNI shared library "C:/JDK/bin/client/jvm.dll"`.

コンソールでJavaを実行しようとした後

Error: could not open `C:\WINDOWS\jre\lib\AMD64\jvm.cfg' 

今、ディレクトリ全体を削除しました

C:\WINDOWS\jre

そして、すべてが再び働いた...私はこのjreがそこから来たのかわかりません、私はそれがウイルスではなかったことを願っています

2
wutzebaer

パッチが私たちに強制された後、仕事用PCにインストールされたJava 7は壊れ、Javaプログラムを実行しようとするとこのエラーが発生しました。どういうわけか、Java 7インストールの 'lib'サブディレクトリ全体が消滅しました! Java 6とJava 7の両方がインストールされていることに関連している可能性があります。'jre6 'ディレクトリにはすべてが残っています。

いずれにせよ、Java 6とJava 7の両方をアンインストールし、Java 7だけを再インストールすることで修正しました。しかし、問題のあるファイルが実際にある場合、ここで他の回答のいくつかで説明されているように、パスの問題が発生している可能性があります。

2
Matt

C:\ ProgramData\Oracle\Java\javapathは私のために働いた..、私はファイルを取り戻し、その中のファイルを削除しました。

1
ananthkva
  • Windows 2008R2Java 1.7.0_15で同様の問題が発生しました(WindowsでJenkinsスレーブエージェントを起動しようとしました)

  • 私は問題に貢献し、それらの両方を変更するとそれが修正された2つの状況がありました:

    1)Java互換パスにunixをインストール(c:\Program Files\... to c:\Software\...から変更);これは、このスレッドで説明されている問題に直接影響を与えたとは思わないが、変更に注意した。

    2)ショートカットを介さずにJavaを実行します。最初はショートカットで失敗しましたが、直接実行可能ファイル(re-running)からのC:\Software\Java...\bin\Javaは機能しました。

1
user1676075

Eclipseで同じ問題があり、[〜#〜] jre [〜# 〜]64ビットから32ビットまで:

ウィンドウ>設定> Java>インストール済みJRE>追加...>次へ>ディレクトリ>「C:」ではなく「C:\ Program Files(x86)\ Java\jre1.8.0_65」を選択\ Program Files\Java\jre1.8.0_60 "

1

Javaインストールパスをc:\Program Files (x86)\Javaからc:\Java\jdk1.7のような別のフォルダーに変更し、それに応じて%Java_HOME%とパスの値を更新しました。

%Java_HOME% = C:\Java\JDK1.7

path-C:\Java\JDK1.7\bin; 
0
sivasubramanian

通常、JREのアップグレードが原因です。

シンボリックリンクをC:\ ProgramData\Oracle\Java\javapath \に変更します

Intall JDK-これは修正されます。

0
beloblotskiy

別の回避策は、Windowsでショートパスを使用することです。

  1. cmd.exeを使用してWindowsコマンドコンソールを開く
  2. goto _c:\_
  3. タイプコマンド> _dir program* /x_
  4. 次のような短いパスで表示されます:_PROGRA~2_
  5. _C:\PROGRA~2_はC:\Program Files (x86)と同じです
  6. _Java_HOME_のパスを次のように置き換えます:_C:\PROGRA~2\Java\jre7_

これは、Windows 7環境で動作するはずです。win764ビットバージョンでは動作していました。

0
Rudra

私はこの問題にわずかに異なる解決策がありました。私のPATHとJava_HOMEは、JDK12を指していました

C:\Program Files\Java

しかし、コマンドの実行:

Java -version

エラーを与えました:

Error: could not open `C:\ProgramFiles\Java\jre1.8.0_212\lib\AMD64\jvm.cfg'

System32とは異なるディレクトリにある実行可能ファイル(Java.exe、javaw.exeなど)のフォルダーを削除する必要がありました。他の回答やブログの投稿が示唆しているとおりです。代わりに、次の場所にある実行可能ファイルに問題があることがわかりました。

C:\Program Files\Common Files\Oracle 

何もなかったのでJava

C:\Windows\System32

この問題が発生していてSystem32に何もない場合は、上記の「共通ファイル」ディレクトリでOracleディレクトリを確認し、削除してください。

その後、PATH参照は正常に機能するはずです!

0
Eogcloud

Javaを再インストールしても役に立たなかった。しかし、env_varsの先頭にJava_HOME変数を置くトリック。jdk1.7.0_11からjdk1.7.0_13へのアップグレード後に問題が発生した。

0
m_c

Javaの更新後にこの問題が発生しました。この問題を解決する最善の方法は、c:/ProgramFiles/Javaフォルダー。 2つのjreフォルダーがあり、1つはjre.yourバージョンとして、もう1つはjdkフォルダーとまったく同じです。 jre.1.yourバージョンフォルダーを削除してください。そこで問題が解決します。これが役立つことを願っています。それは私のために働いた。

0
Naseer Ahammed
Error: could not open `C:\Program Files\Java\jre6\lib\AMD64\jvm.cfg'

@ =を見て、ポストインストールスクリプトの問題があり、Javaのアップデートをインストールした後に自動的に発生した問題が発生したため、アップデートjdk8 1.8.0_191を使用しているので伝播されます。

Error: could not open `C:\Program Files\Java\jre1.8.0_191\lib\AMD64\jvm.cfg'

この場合、これは終了することはなく、パスを手動で変更するなどの回避策を実行する必要があります。

0
Rahul