当我试图检查我正在运行的Java的当前版本时,我收到了错误“Java不能被识别为内部或外部命令、可操作的程序或批处理文件。”
我运行的是Windows 7操作系统,下载了最新的JDK,我觉得我可能不小心从机器上删除了java,因为在我能够使用“java -version”命令检查java版本之前。
我必须下载什么软件才能让Java在我的机器上重新工作?
编辑:
在确保所有环境变量都指向当前的Java SDK之后,我已经设法让Java从我的cmd中再次运行。
当我试图检查我正在运行的Java的当前版本时,我收到了错误“Java不能被识别为内部或外部命令、可操作的程序或批处理文件。”
我运行的是Windows 7操作系统,下载了最新的JDK,我觉得我可能不小心从机器上删除了java,因为在我能够使用“java -version”命令检查java版本之前。
我必须下载什么软件才能让Java在我的机器上重新工作?
编辑:
在确保所有环境变量都指向当前的Java SDK之后,我已经设法让Java从我的cmd中再次运行。
您需要配置环境变量JAVA_HOME和PATH。
JAVA_HOME必须包含java的路径,您应该将%JAVA_HOME%\bin添加到path中
或者,您可以简单地将bin文件夹的整个路径添加到PATH中,而不需要JAVA_HOME变量,但是,当您需要在您的机器上有多个java版本时,这就有点麻烦了(这样您只需要更改JAVA_HOME,甚至不需要更改PATH)
听起来好像您没有将正确的目录添加到路径中。
首先找出您在哪个目录中安装了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 Box中安装了cygwin,或者使用UNIX Shell则
Issue bash#which java
这将告诉你java是否在你的类路径中。
Windows 7:
右键单击我的电脑 选择属性 选择高级系统设置 选择Advanced选项卡 选择环境变量 在“系统变量”下选择“路径” 单击Edit按钮 在变量值编辑器中,将此粘贴到行首 C:\Program Files\Java\ jdk1.7.0_72 \ bin。 单击“确定”,然后再次单击“确定” 重新启动命令提示符,否则它不会看到对路径变量的更改 在命令提示符中输入java -version。
第8步注意事项:
这里的java版本可能与这里使用的不同——这只是一个示例。 path变量中可能还有其他值。不要删除已经存在的内容,这一点非常重要。这就是为什么指令说要将给定的值粘贴在行首——这意味着您不删除现有的值,只需在它前面加上java。这还可以修复如果路径上也有其他版本的java时可能遇到的任何问题。
第六步注意事项:
这将为计算机设置路径,而不是为个人用户设置路径。可能您正在其他开发人员也在使用的计算机上工作,在这种情况下,您宁愿设置用户变量,而不是系统变量
在我的情况下,PATH被正确设置,但PATHEXT已被我错误地清除。exe扩展名。这就是为什么窗口不能找到java或任何。exe应用程序从命令提示符。希望它能帮助到一些人。
假设Java/JDK安装在C:\Program Files\ Java:
请遵循以下步骤:
转到控制面板→系统→高级系统设置→高级→环境变量(控制面板中的赢取+系统暂停/中断) 在系统变量部分点击新建… 在“变量名”中输入:JAVA_HOME 在“Variable value write: C:\Program Files\Java\ bin”中,按“OK”。 在“系统变量”部分双击“路径” 按New并写入C:\Program Files\Java\ bin,按OK: 在“环境变量”窗口中按“确定” 重新启动/运行cmd.exe并写入:java——version:
Windows 8存在此问题。 首先复制您的java jdk的路径-例如C:\Program Files\Java\ jdk1.7.0_51\bin。
右键单击桌面上的“我的电脑”图标,单击“属性”。 在左侧窗格中选择“高级系统设置”。 在“高级”选项卡下,选择底部的“环境变量”。 在“系统变量”中选择“路径”变量并编辑它。
粘贴路径,并在末尾添加一个';',例如C:\Program Files\Java\ jdk1.7.0_51\bin;
查询环境变量。
打开“编辑系统环境变量”。 然后点击“环境变量”。
在“用户变量”下,点击“路径”,然后点击“编辑”。
找到你的Java路径,然后点击“编辑”。
然后粘贴Java安装文件夹的路径。 大多数情况下,你可以在类似的路径上找到它。 C:\Program Files\Java\jdk-12.0.2\bin
单击“确定”。 现在在开始菜单中,键入cmd。 打开命令提示符。 类型 java - version 如果你做对了,它应该是这样的。
如果您使用的是笔记本电脑,没有暂停\中断按钮。 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为例,在你的情况下,它可能与我的不同。
试试这个:
系统变量: PATH = jdk安装的/bin文件夹
https://docs.oracle.com/javase/10/install/installation-jdk-and-jre-microsoft-windows-platforms.htm
只是给那些仍然有问题的人提供一些额外的信息, 不要编辑java的path变量,而是删除这部分路径(只删除java!!) 并创建一个指向jdk/jre的新变量。
这似乎对我很管用。
在更新环境变量后,我在Windows 10中打开了一个新的命令提示符,而没有关闭旧的命令提示符(让我的命令更方便,并且懒得再次输入) 不过,新的cmd窗口指的是以前版本的Java。
然后,一旦我关闭了所有以管理权限运行的cmd提示符,新的java版本就反映出来了。