13

マシンに Java をインストールしていますが (JRE は の下C:\Program Files\Javaにあります)、Windows PowerShell コマンド プロンプトから Java コマンドを実行できません。

>>> java -version
java : The term 'java' is not recognized as the name of a cmdlet, function, script file, or operable program. Check
the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ java
+ ~~~~
    + CategoryInfo          : ObjectNotFound: (java:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

しかし、Java が機能し、古い Windows コマンド プロンプトで Java コマンドを実行できることに気付きました。これらのコマンドを実行できないのは PowerShell だけであることがわかりました。

JRE 7 があり、Windows 8 で Windows PowerShell を使用しています。

4

10 に答える 10

6

2 つの環境変数を変更します。

  1. JAVA_HOME次のような変数 を追加します。C:\Java\JDK1.7.0_25_x64
  2. %JAVA_HOME%\bin変数の先頭に追加しPATHます。

次に、まったく新しいシェルを開始して、変更が適用されたかどうかを確認します。

于 2013-08-29T17:35:16.223 に答える
1

それをC:/Program Files/Java/jre7/binクラスパス環境変数に追加します。

于 2013-05-29T10:22:49.827 に答える
1

環境変数が設定されているか、環境を適切にソースしている場合、問題はシェルでファイルを実行することです。

javac .\HelloWorld.java      //That is a file, so it can be ./

java HelloWorld              //Not the correct file name, so it will not execute, and so must call it as in MSDOS

.\Javaバイトコードは拡張子なしで実行する必要があり.\、ファイル実行用であるため、HelloWorld.classではできません。

于 2014-10-23T04:47:21.897 に答える
1

cmd では機能するが PowerShell では機能しない場合は、JDK パス エントリが引用符で囲まれている可能性があります

別の質問への回答で説明されているように、システム変数に移動し、パスの生のテキストを編集して、引用符を削除するだけです。

于 2018-02-03T20:14:01.203 に答える
0

通常のシェルでは機能するが PowerShell では機能しない場合は、パスをインストールまたは設定したときに PowerShell が開いていた可能性があり、PowerShell を閉じて新しいものを再度開いて、新しいパスを取得する必要があります。

于 2013-05-29T10:34:06.397 に答える