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

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

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

编辑:

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


当前回答

对我来说,它开始工作后,:在系统变量路径的开始:——

其他回答

听起来好像您没有将正确的目录添加到路径中。

首先找出您在哪个目录中安装了Java。例如,在我的盒子上,它位于C:\Program Files\java\ jdk1.7.0_111中。一旦你找到了它,试着直接运行它。例如:

c:\> "c:\Program Files\java\jdk1.7.0_11\bin\java" -version

一旦确定获得了正确的版本,将bin目录添加到PATH环境变量中。

请注意,您并不需要JAVA_HOME环境变量,而且已经有一段时间不需要了。有些工具可能会使用它——如果您正在使用其中之一,那么当然要设置它——但如果您只是使用(比如说)Eclipse和命令行java/javac工具,不使用它也可以。


是的,这提醒了我我需要更新…

如果您使用的是笔记本电脑,没有暂停\中断按钮。 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。为此,您需要在系统变量下设置环境变量。

在我的情况下,PATH被正确设置,但PATHEXT已被我错误地清除。exe扩展名。这就是为什么窗口不能找到java或任何。exe应用程序从命令提示符。希望它能帮助到一些人。

我纠正了我的路径变量,但命令提示符需要重新启动,否则,它将无法验证对路径变量的更改。可能对我这样的人有帮助。所以 “重启命令提示符”