首先引入问题:
java -version 回车, 显示java version '1.8.0_421'...
javac -version 回车,'javac' is not recognized as an internal or external command,...
java -version 能运行但 javac -version 报错,通常由以下原因导致:
常见原因及解决方案:
1. 安装了 JRE 而非 JDK
- 现象:
java命令可用但javac不可用 - 原因:只安装了 Java Runtime Environment (JRE),未安装 Java Development Kit (JDK)
- 解决方案:
- 访问 Oracle JDK 或 OpenJDK
- 下载并安装 JDK(非 JRE)
- 重新配置
JAVA_HOME指向 JDK 安装目录(如C:\Program Files\Java\jdk-17)
2. 环境变量配置错误
-
检查步骤:
- 按
Win+R输入cmd打开命令提示符 - 执行以下命令:
echo %JAVA_HOME% # 检查JDK路径是否正确 where java # 检查java命令位置 where javac # 检查javac是否存在
- 按
-
修复方案:
- 确保
JAVA_HOME指向 JDK安装目录(不是JRE目录) - 确保
Path包含%JAVA_HOME%\bin - 修改后重启命令提示符
- 确保
3. 多版本 JDK 冲突
- 排查方法:
where /r C:\ java.exe # 搜索所有java.exe where /r C:\ javac.exe # 搜索所有javac.exe - 解决方案:
- 删除旧版本 JDK/JRE
- 在环境变量
Path中确保 JDK 的 bin 路径在最前面 - 在 IntelliJ 中检查项目 SDK:
File > Project Structure > Project SDK\
4. JDK 安装损坏
- 解决方案:
- 卸载当前 JDK(控制面板 > 程序与功能)
- 删除残留文件夹(如
C:\Program Files\Java\jdk-xx) - 重新下载并安装 JDK
- 重启电脑后重试
验证修复效果:
- 打开新的命令提示符(重要!)
- 依次执行:
java -version # 应显示版本 javac -version # 应显示相同版本
⚠️ 注意:修改环境变量后必须重启命令提示符窗口才会生效!
补充说明:
- JDK vs JRE 区别:
- JDK 包含开发工具(javac/jar等)
- JRE 仅包含运行环境(只有java命令)\
总结:
安装JDK(Java Development Kit)
设置环境变量:
新建系统变量
JAVA_HOME,值为JDK安装路径(例如:C:\Program Files\Java\jdk1.8.0_291)。编辑系统变量
Path,添加%JAVA_HOME%\bin。验证安装:打开命令提示符(cmd),输入
java -version和javac -version,应显示安装的版本。示例截图:
JDK安装目录结构(应有
bin\javac.exe):JDK安装目录 │ ├─bin │ ├─java.exe │ ├─javac.exe │ └─... ├─lib └─...
安装Maven
下载Maven:访问Maven官网,下载二进制zip包(例如:apache-maven-3.8.6-bin.zip)。
解压到某个目录(例如:
D:\apache-maven-3.8.6)。设置环境变量:
新建系统变量
MAVEN_HOME,值为Maven解压路径(例如:D:\apache-maven-3.8.6)。编辑系统变量
Path,添加%MAVEN_HOME%\bin。验证安装:cmd中输入
mvn -v,应显示Maven版本和JDK信息。