当我试图检查我正在运行的Java的当前版本时,我收到了错误“Java不能被识别为内部或外部命令、可操作的程序或批处理文件。”

我运行的是Windows 7操作系统,下载了最新的JDK,我觉得我可能不小心从机器上删除了java,因为在我能够使用“java -version”命令检查java版本之前。

我必须下载什么软件才能让Java在我的机器上重新工作?

编辑:

在确保所有环境变量都指向当前的Java SDK之后,我已经设法让Java从我的cmd中再次运行。


当前回答

只是给那些仍然有问题的人提供一些额外的信息, 不要编辑java的path变量,而是删除这部分路径(只删除java!!) 并创建一个指向jdk/jre的新变量。

这似乎对我很管用。

其他回答

如果您使用的是笔记本电脑,没有暂停\中断按钮。 windows 10 20h2及以上用户:

1 WIN→输入“关于您的PC”→底部滚动→高级系统设置→环境变量或WIN+R→shell:::{bb06c0e4-d293-4f75-8a90-cb05b6477eee}打开左边的经典系统属性→高级系统设置→环境变量

Windows 10和Windows 7也适用:

1 WIN→本机→属性→高级系统设置→环境变量

在系统变量部分点击新建… 在“变量名”中输入:JAVA_HOME 在“Variable value write: C:\Program Files\Java\jdk-15.0.2\ bin”中按“OK”

我从维贾伊·巴特那里学了2-4步

有一种更快的方法来设置系统变量。以管理员身份运行控制台(终端)。

添加新变量的通用命令语法:

setx variableName value /M

在我们的示例中,我们需要将其设置为

setx JAVA_HOME "C:\Program Files\Java\jdk-15.0.2\bin" /M`

是这样的:

/M - flag设置系统环境变量。 执行命令后,您应该看到以下消息: SUCCESS:保存了指定的值。

我如何检查它是否已添加?

关闭您的活动终端; 打开你喜欢的终端; 输入java -version。

你应该会看到类似这样的东西:

注意: 用户变量可以创建w/o有根(管理员特权),而创建系统变量;您需要以根用户身份打开控制台。

我以C:\Program Files\Java\jdk-15.0.2\bin为例,在你的情况下,它可能与我的不同。

如果在用户变量下设置了环境变量(JAVA_HOME和PATH),命令提示符(以管理员身份运行)将不会识别java。为此,您需要在系统变量下设置环境变量。

如果您在Windows Box中安装了cygwin,或者使用UNIX Shell则

Issue bash#which java

这将告诉你java是否在你的类路径中。

不知道为什么,但在我的情况下,原因是因为我运行蟒蛇终端而不是CMD。

在我使用CMD并更新路径设置后,如上所有评论中提到的问题在我这边解决了。

重新启动命令提示符,检查JDK版本。我在上面花了02天,直到我在检查javac - version、javac等之前重新启动命令提示符,问题才得到解决。