18

Windowsの.batスクリプトを使用していますJAVA_HOMEC:/Program Files/Java/jdk1.6.0_32 、を実行するjava -versionと、1.3が表示されます。

どうすればこれを修正できますか?私は何が間違っているのですか?

4

7 に答える 7

15

私にとって、問題は私のPATH変数にあり、私のC:\ProgramData\Oracle\Java\javapath;前にjavawindowsinstallによって追加されました%JAVA_HOME%\bin;。だから私はecho %JAVA_HOME%JDK7を指してjava -versionjdk8を表示します。

jdk7が表示されるように%JAVA_HOME%\bin;前に置きます。C:\ProgramData\Oracle\Java\javapath;java -version

于 2017-02-10T10:41:54.577 に答える
10

試す%JAVA_HOME%\bin\java -version

を変更する場合は、通常、絶対パスを使用して(を使用して)JAVA_HOME呼び出すことをお勧めします。これは、新しいバイナリがパスに含まれていない可能性があるためです(Windowsは間違ったバイナリをロードします)。javaJAVA_HOME

于 2012-05-21T14:27:34.347 に答える
6

PATH環境変数がを指していることを確認してください%JAVA_HOME%\bin

于 2012-05-21T14:25:13.177 に答える
2

システム変数のパスとユーザー変数のシステムパスを混在させないように注意してください。java絶対パスなしで呼び出しても問題ないと感じます(方法JAVA_HOMEPATH構成がわかっている場合)。

于 2012-10-24T21:20:55.797 に答える
0

コマンドラインから呼び出すjava -versionと、cmd.exeは「既知の」ディレクトリを検索します。「既知」とは、PATH環境変数を意味します。PATHにbin1.6ではなくjava1.3フォルダが含まれているようです。

JAVA_HOMEは別の変数であり、Javaラッパー、またはJavaのものを実行するスクリプトによって(たとえば、だけでなく)使用されます。

これを試してみてください:

SET JAVA_HOME=C:/Program Files/Java/jdk1.6.0_32
%JAVA_HOME%/bin/java -version

必要に応じて引用符を追加します。

于 2012-05-21T14:26:45.110 に答える
0

同様の問題がありました。私の場合、2つのバージョンのJavaがインストールされていました。1つのバージョンのJavaをシステムから完全にアンインストールすることで修正できます。

于 2017-05-06T15:40:29.053 に答える
0

今日同様のシナリオがありました-2つのWindows10デバイス-両方ともJRE1.6と1.7を持っています。

入力するとき

 Java -version 

1つのデバイスは1.6を示し、他のデバイスは1.7を示します。

これにより、サードパーティのJARを実行して、1.6を示すデバイスにソフトウェアをインストールすることができませんでした(java -versionを実行すると1.7を示すデバイスで正常に動作しました)。

  java -jar ThirdParty.jar 

JARは1.7で実行する必要があったため。

これの原因はPATH環境変数にありました-1つのデバイスはPATHリストの最初に1.6の場所を持っていました、1.6の場所の上に1.7の場所を移動すると、Javaバージョンを使用して一貫性が得られ、ソフトウェアをインストールできました。

于 2019-12-11T10:26:37.397 に答える