JDK装完了,cmd里输java -version却提示「不是内部或外部命令」。这是java安装教程及环境配置方法里最高频的问题:程序装了,环境变量没生效。按下面的顺序来。

第一步:选对版本和路径

日常开发和跑服务选LTS版本,比如17或21,来源用Oracle官网或主流OpenJDK发行版。安装路径别带中文和空格,装到类似C盘根目录下jdk-17这样的文件夹,后面配置省事。

第二步:配两个环境变量

  • 新建系统变量JAVA_HOME,值填JDK安装根目录,也就是bin的上一级
  • 编辑Path,追加一条指向JDK目录下bin的条目,可以写成%JAVA_HOME%下的bin

Windows下新增Path条目后要点确定逐层退出,直接叉掉窗口等于没保存。改完的环境变量只对新开的终端生效。

第三步:验证

重开一个新的cmd窗口,依次执行java -version和javac -version,两条都有版本号输出才算配好。java有输出而javac没有,多半装的是JRE,或者Path指错了目录。

常见报错对照

  • 提示不是内部或外部命令:Path没加对,或者没用新窗口
  • 提示Error occurred during initialization of VM:安装文件损坏,重装
  • 版本和预期不符:Path里有旧JDK排在前面,用where java看实际命中的位置

结论:配完用where java确认命中的是哪个版本,多版本共存时Path顺序说了算;IDEA这类工具还能单独指定JDK,不必抢系统变量。