温馨提示×

centos为何找不到java编译

小樊
39
2026-09-09 08:30:46
栏目: 编程语言

在 CentOS 上“找不到 Java 编译”,通常有以下几种常见原因和对应解决办法。


一、没有安装 JDK(只装了 JRE 或没装)

现象:

javac: command not found

原因:

  • 系统只装了 java(运行环境),没有装 javac(编译器)
  • 或者根本没装 Java

解决:

# 查看是否安装
java -version
javac -version

安装 JDK(推荐 OpenJDK):

sudo yum install java-1.8.0-openjdk-devel
# 或
sudo yum install java-11-openjdk-devel

注意:devel 包才包含 javac


二、Java 已安装,但 PATH 没配置

现象:

which javac
# 无输出

解决: 查找 javac 位置:

find / -name javac 2>/dev/null

通常路径类似:

/usr/lib/jvm/java-1.8.0-openjdk/bin/javac

配置环境变量:

vim ~/.bashrc

添加:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH

生效:

source ~/.bashrc

三、用了最小化安装(Minimal CentOS)

Minimal 版默认不带任何 Java

yum list installed | grep java

直接安装即可:

sudo yum install java-1.8.0-openjdk-devel

四、系统有多个 Java 版本,未切换

alternatives --config java
alternatives --config javac

确保 javac 指向正确的 JDK。


五、误把 java 当编译器

  • java:运行 .class
  • javac:编译 .java

示例:

javac Hello.java
java Hello

快速自检清单 ✅

  • [ ] 是否安装了 *-devel
  • [ ] javac -version 是否可用
  • [ ] JAVA_HOMEPATH 是否配置
  • [ ] 是否用 Minimal 系统

如果你愿意,可以把下面命令的输出发我,我可以直接帮你判断:

java -version
javac -version
which java
which javac

0