Ubuntu 16.04 LTS下将Java从1.8.0_161改为1.8.0_151失败求助
嘿,我来帮你搞定这个Java版本切换的问题~ 其实不一定非要卸载重装,咱们先试试把现有JDK配置正确,实在不行再考虑卸载的事儿。
先尝试修复版本切换问题(无需卸载)
你已经把JDK 1.8.0_151解压到/home/b/了对吧?那咱们通过系统的alternatives工具来正确注册和切换版本,步骤如下:
- 先确认JDK解压后的完整路径,比如如果解压后文件夹是
jdk1.8.0_151,那完整路径就是/home/b/jdk1.8.0_151 - 执行命令注册
java命令到系统(记得替换成你的实际路径):
这里的sudo update-alternatives --install /usr/bin/java java /home/b/jdk1.8.0_151/bin/java 100100是优先级数值,数字越大,该版本被选中的优先级越高 - 同样注册
javac命令(编译工具也得同步配置):sudo update-alternatives --install /usr/bin/javac javac /home/b/jdk1.8.0_151/bin/javac 100 - 现在运行切换命令,选择你要的JDK版本:
终端会弹出所有已注册的Java版本列表,输入对应JDK 1.8.0_151的序号回车即可。同样给sudo update-alternatives --config javajavac做一次切换:sudo update-alternatives --config javac - 最后验证配置是否生效:
正常情况下就会显示你要的1.8.0_151版本了java -version javac -version
另外,还要检查PATH环境变量,确保手动下载的JDK的bin目录在系统默认Java路径前面。可以打开~/.bashrc或者~/.profile文件,添加一行:
export PATH="/home/b/jdk1.8.0_151/bin:$PATH"
保存后执行source ~/.bashrc让配置立即生效,再重新验证版本。
如果确实需要卸载现有Java
要是上面的方法都不管用,或者你想彻底清理后重装,那可以按以下步骤操作:
1. 查看系统已安装的Java相关包
先列出所有通过apt安装的Java包:
dpkg --list | grep -i java
终端会输出类似openjdk-8-jdk、default-jdk之类的包名
2. 彻底卸载相关包
执行命令卸载所有Java相关包(包括配置文件):
sudo apt-get purge openjdk-\* java-\*
3. 清理残留依赖和缓存
sudo apt-get autoremove sudo apt-get autoclean
这两个命令会自动清理没用的依赖包和安装缓存
4. 验证卸载完成
执行下面的命令,如果终端提示"java: command not found",就说明卸载干净了:
java -version javac -version
5. 重新安装(可选)
如果之后想重新安装Java,推荐用apt安装OpenJDK 8(更稳定且无需手动配置):
sudo apt-get update sudo apt-get install openjdk-8-jdk
或者继续使用你手动下载的Oracle JDK,按照前面第一部分的配置步骤操作即可。
内容的提问来源于stack exchange,提问作者el323
相关产品推荐
相关产品推荐

