admin 管理员组

文章数量: 1184232

😀前言
有很多小伙伴提问这个所以就单独出一个解决教程
java环境变量配置以及“‘javac’ 不是内部或外部命令”问题的解决方法(2025年9月姆级最新)
安装的话可以参考这个

java 安装和环境配置(2025-9月保姆级最新版)

🏠个人主页:尘觉主页

文章目录

  • 打开cmd,输入java,java -version没有问题,但是javac提示不是内部命令
    • 问题排查:
      • 第一:找到目录
      • 第二确定问题
    • 解决问题
      • 环境变量配置:
        • CLASSPATH 配置
        • Java_Home配置
    • 检测成功
    • 为什么会出现这个问题(通俗解释)
    • 常见问题 & 解决提示
    • 高手小贴士(可选)
    • 快速检查清单(Summary Checklist)
    • 结语

打开cmd,输入java,java -version没有问题,但是javac提示不是内部命令

问题排查:

第一:找到目录

找到JDK下的bin目录,运行cmd,输入javac,能提示,说明环境配置有问题

这个输入框输入cmd

第二确定问题

这个直接输入javac看可以不,如果不可以那就要考虑重装java的,重装教程为
java 安装和环境配置(2024-4月保姆级最新版)

然后我们可以看看路径 在cmd里面输入:path

显示这个密密麻麻的没关系我们直接去,查看自己电脑的系统类型
右击此电脑 点击属性

点击 高级系统设置

点击环境设置

解决问题

选择系统变量中Path 然后选择编辑

注意这个路径不要错了,然后要看有没有冲突

1是安装jdk时使用exe文件,自动添加的目录

2是自己配置的JAVA HOME因为1排在前面,配置2会失效

如果不是java_home是直接是绝对路径那也要注意先后顺序,有优先级的

环境变量配置:

一般用系统变量不要用,用户变量

CLASSPATH 配置

他的目的就是存放class的目录没有设置就是默认 同学们新学就不要纠结这个啦 后面的学习就会知道并且了解了

添加配置:

变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
注意前面有一个点后面有分号

Java_Home配置

变量名:Java_Home
变量值:jdk 的安装目录 ,选择之前安装的目录
点击确定


好了,java 在 windows 环境下的环境配置就完成了
一定要注意环境

修改好的环境变量,需要重新打开新的cmd窗口!!

检测成功

java

javac

为什么会出现这个问题(通俗解释)

  • java 是 Java 运行时(JRE / JDK)里的可执行程序,用来运行 .class 文件。
  • javac 是 Java 开发工具包(JDK)里的编译器,用来把 .java 源文件编译成 .class
    如果你只安装了 JRE(仅运行环境) 或系统 PATH 指向了一个只包含 java.exe 的目录(比如某个 JRE 或其他 Java 发行版),那 java 会可用,而 javac 不在 PATH 中就会报错。常见原因还包括 PATH 顺序错误或多个 Java 版本冲突。

常见问题 & 解决提示

  • 只看到 java,找不到 javac
    → 很可能你只装了 JRE,或 PATH 指向了 JRE 的 bin 或旧的 Java 目录。安装 JDK 并把 JDK\bin 放到 PATH 前面。
  • where java 显示 C:\Windows\System32\java.exe
    → 有时系统或某些程序把 java.exe 放到了 System32,这会优先被使用。你可以把 JDK\bin 放在 PATH 更靠前,或删除/修改导致冲突的项(小心操作)。
  • 我把 PATH 加了却不生效
    → 记得 重新打开 CMD 才能看到变化。如果使用 setx 命令设置环境变量,可能需要注销或重启特定程序(通常重新打开 CMD 就可以)。
  • 关于 tools.jar / dt.jar
    → 这些是在老版本 JDK(≤8)里使用的,现代 JDK(9 及以后)已经模块化,不需要把这些 jar 放到 CLASSPATH。不要盲目复制网上旧教程里的 CLASSPATH 设置。
  • 多个 JDK/JRE 并存如何处理?
    → 用 where javawhere javac 找出所有路径,选择你希望使用的版本,把它的 ...jdk...\bin 放到 PATH 的最前面,或删除不需要的旧版本 PATH 条目。

高手小贴士(可选)

  • 如果你想通过命令行设置(临时),可以:

    set JAVA_HOME=C:\Program Files\Java\jdk-17.0.2
    set PATH=%JAVA_HOME%\bin;%PATH%
    

    这只在当前 CMD 会话有效,关闭后失效。要永久生效请用“环境变量” GUI 或 setx(注意 setx 会永久修改,但效果在新会话生效)。

  • 想查系统合并后的 PATH(用户+系统)顺序,可以在 CMD 输入 echo %PATH%,或在 PowerShell 用 $env:Path.Split(';') 更清晰地查看每一项。


快速检查清单(Summary Checklist)

  1. 安装 JDK(不是只装 JRE)。
  2. 设置 JAVA_HOME 指向 JDK 根目录。
  3. 在 PATH 中添加 %JAVA_HOME%\bin(并放在合适位置以防冲突)。
  4. 关闭并重新打开 CMD;运行 javac -version 验证。
  5. 若仍有问题,用 where java / where javac 查找冲突路径并调整。

结语

大多数情况下,java -version 能看见但 javac 不行,都是因为没有安装 JDKPATH 指向了错误的目录。按上面的步骤逐条排查、修正 PATH 后,问题可以很快解决。

😁热门专栏推荐
想学习vue的可以看看这个

java基础合集

数据库合集

redis合集

nginx合集

linux合集

手写机制

微服务组件

spring_尘觉

springMVC

mybits

等等等还有许多优秀的合集在主页等着大家的光顾感谢大家的支持

🤔欢迎大家加入我的社区 尘觉社区

文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁
希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

本文标签: 解决方法 环境变量 命令 最新 月姆级