繁体   English   中英

“Java”未被识别为内部或外部命令

[英]'Java' is not recognized as an internal or external command

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

我正在运行 Windows 7 操作系统并下载了最新的 JDK,并且感觉我可能不小心从机器中删除了 java,就像之前我能够使用命令“java -version”检查 Java 版本一样。

我必须下载什么软件才能让 Java 再次在我的机器上运行?

编辑:

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

您需要配置环境变量JAVA_HOMEPATH

JAVA_HOME必须包含 java 的路径,你应该将%JAVA_HOME%\\bin添加到PATH

或者,您可以简单地将 bin 文件夹的整个路径添加到您的PATH ,而无需JAVA_HOME变量,但是,当您需要在您的机器上拥有多个 Java 版本时,这会变得有点烦人(这样您只需要更改JAVA_HOME甚至不用理会PATH

对于 Windows 7:

  1. 右键单击My Computer
  2. 选择Properties
  3. 选择Advanced System Settings
  4. 选择Advanced选项卡
  5. 选择Environment Variables
  6. 选择System Variables下的Path
  7. 点击Edit按钮
  8. 在变量值编辑器中将此粘贴到行首

    C:\\Program Files\\Java\\jdk1.7.0_72\\bin;
  9. 单击确定,然后再次确定

  10. 重新启动命令提示符,否则它不会看到对路径变量的更改
  11. 在命令提示符中键入java -version


步骤 8 的注意事项:
1. 这里的java版本可能与这里使用的不同——这只是一个例子。
2. 路径变量中可能会有其他值。 不要删除已经存在的内容,这一点非常重要。 这就是为什么指令说在行的开头粘贴给定的值——这意味着你不删除现有的值,你只是把 java 放在它前面。 如果路径上还有其他版本的 java,这也可以解决您遇到的任何问题。

步骤 6 的注意事项:
1. 这为计算机设置路径,而不是为个人用户设置路径。 可能您正在使用其他开发人员也使用的计算机,在这种情况下,您宁愿设置用户变量,而不是系统变量

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

首先找出您安装 Java 的目录。例如,在我的机器上,它位于C:\\Program Files\\java\\jdk1.7.0_11 1 中 找到后,尝试直接运行它。 例如:

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

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

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


1是的,这提醒我我需要更新...

假设 Java/JDK 安装到文件夹: C:\\Program Files\\Java

Java/JDK安装路径

按照步骤:

  1. 转到控制面板 → 系统 → 高级系统设置 → 高级 → 环境变量控制面板中系统的Win + Pause/Break
  2. 系统变量部分单击新建...
  3. 变量名中写入: JAVA_HOME
  4. 变量值写入: C:\\Program Files\\Java\\bin ,按OK 添加JAVA_HOME
  5. 系统变量部分双击Path
  6. New并写入C:\\Program Files\\Java\\bin ,按OK 添加 Java 路径
  7. 环境变量窗口中按OK
  8. 重新启动/运行cmd.exe并写入: java --version Java版CMD

搜索环境变量。 在此处输入图片说明

打开“编辑系统环境变量”。 然后点击“环境变量”。 在此处输入图片说明

在“用户变量”下点击“路径”,然后点击“编辑”。 在此处输入图片说明

找到您的 Java 路径并单击“编辑”。 在此处输入图片说明

然后粘贴你的java安装文件夹的路径。 大多数情况下,您可以在与此类似的路径上找到它。 C:\\Program Files\\Java\\jdk-12.0.2\\bin

然后单击确定。 现在在开始菜单中,键入 cmd。 打开命令提示符。 输入 java -version 如果你做对了,它应该显示这样的东西。 在此处输入图片说明

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


在此处输入图片说明

在此处输入图片说明


我的解决方案是在JAVA_HOMEPath放置相同的值(JDK bin 文件夹的Path

JAVA_HOME小路

这个问题是在 Windows 8 上。首先复制你的 java jdk 路径 - 例如 C:\\Program Files\\Java\\jdk1.7.0_51\\bin。

  1. 右击桌面上的我的电脑图标,然后单击属性。

  2. 在左侧窗格中选择“高级系统设置”。

  3. 在“高级”选项卡下,选择底部的“环境变量”。

  4. 在系统变量中,选择“路径”变量并进行编辑。

粘贴路径并添加“;” 最后 - 例如 C:\\Program Files\\Java\\jdk1.7.0_51\\bin;

就我而言,PATH 已正确设置,但我错误地使用 .exe 扩展名清除了 PATHEXT。 这就是为什么窗口在命令提示符下找不到 java 或任何 .exe 应用程序的原因。 希望它可以帮助某人。

我有同样的问题。 只需在您的计算机上安装 Java 的确切位。 如果您的 PC 是 64 位,则安装 64 位 java。 如果是 32 位,则反之亦然 :)

不知道为什么,但就我而言,原因是因为我运行的是 Anaconda 终端而不是 CMD。

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

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

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

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

也适用于 Windows 10 和 Windows 7:

1 WIN → 这台电脑 → 属性 → 高级系统设置 →环境变量

  1. 在系统变量部分单击新建...
  2. 在变量名中写入: JAVA_HOME
  3. 在变量值写入: C:\\Program Files\\Java\\jdk-15.0.2\\bin ,按确定

我已经采取了Vijay Bhatt 的第2-4 步

在 UI 中添加新的系统变量

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

添加新变量的通用命令synax:

setx variableName value /M

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

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

像这样: 使用管理控制台添加新的系统变量

/M - 标志指定在系统环境中设置变量。 命令执行后,您应该看到消息: SUCCESS: Specified value was saved.

如何检查它是否已添加?

  1. 关闭您的活动终端;
  2. 打开你最喜欢的终端;
  3. 输入java -version

您应该会看到类似的内容: 结果图

注意:用户变量可以在没有root(管理员权限)的情况下创建,而要创建System variable 您需要以root身份打开控制台

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

更新环境变量后,我在 Windows 10 中打开了一个新的命令提示符而没有关闭旧的(为了方便我的命令并且懒得再次输入),新的 cmd 窗口指的是以前版本的 Java。

然后,一旦我关闭了以管理员权限运行的所有 cmd 提示,就会反映新的 Java 版本。

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

Issue bash#which java

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

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

尝试这个:

系统变量:PATH = 您的 jdk 安装的 /bin 文件夹

https://docs.oracle.com/javase/10/install/installation-jdk-and-jre-microsoft-windows-platforms.htm

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

这似乎对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM