在 CentOS 上“卸载并重装 Java(编译环境)”,一般分两种情况:
下面以 CentOS 7 / 8 通用思路 说明,重点放在 JDK(可编译)。
java -version
rpm -qa | grep java
rpm -qa | grep jdk
sudo yum remove java* jdk* openjdk*
或者精确卸载:
sudo yum remove java-1.8.0-openjdk*
sudo yum remove java-11-openjdk*
sudo rpm -e <包名>
例如:
sudo rpm -e jdk-17.0.1
如果是 /usr/local/java 这种:
sudo rm -rf /usr/local/java
并删除环境变量:
vi ~/.bashrc
vi /etc/profile
删除类似:
export JAVA_HOME=...
export PATH=$JAVA_HOME/bin:$PATH
然后:
source /etc/profile
sudo yum install java-1.8.0-openjdk-devel
或
sudo yum install java-11-openjdk-devel
⚠️ 一定要带
-devel,否则只有java没有javac
sudo dnf install java-11-openjdk-devel
验证:
javac -version
tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/
vi /etc/profile
添加:
export JAVA_HOME=/usr/local/jdk-17
export PATH=$JAVA_HOME/bin:$PATH
source /etc/profile
sudo alternatives --config java
sudo alternatives --config javac
java -version
javac -version
echo $JAVA_HOME
❓ 只有 java 没有 javac
→ 没装 -devel 包
❓ command not found → PATH 没配置或 source 没执行
❓ 版本不对
→ 用 alternatives 切换
如果你能告诉我:
我可以给你精确命令。