怎么在ubuntu上安装java jdk
- 后端开发
- 2025-08-02
- 2149
sudo apt install default-jdk
或指定版本如
sudo apt install openjdk-11-jdk
,也可手动下载解压并配置环境变量
是在Ubuntu系统上安装Java Development Kit (JDK)的详细步骤指南,涵盖多种方法和配置技巧:
通过APT包管理器安装(推荐)
这是最简便的方式,适用于大多数场景,默认会安装OpenJDK——一个免费的开源实现。
-
更新软件源
sudo apt update && sudo apt upgrade
-
安装默认版本
sudo apt install default-jdk
此命令自动选择当前Ubuntu版本支持的主流JDK(如OpenJDK 17或更高),完成后可通过
java -version
验证是否成功。 -
指定特定版本
如果需要精确控制版本号(例如开发兼容性要求),可使用:sudo apt install openjdk-11-jdk # 安装JDK 11 sudo apt install openjdk-17-jdk # 安装JDK 17
同样用
java -version
检查环境变量生效情况。
优点:无需手动解压、自动处理依赖关系;缺点是无法直接获取Oracle官方的商业许可版JDK。
手动下载并部署Oracle JDK
当项目需要特定厂商支持或高级特性时,可选择从官网下载二进制文件进行安装。
步骤如下:
-
访问Oracle官网下载页面,根据系统架构选择合适的Linux x64压缩包(通常为
.tar.gz
格式)。 -
创建目标目录并解压
sudo mkdir -p /usr/local/java # 若不存在则新建 cd /tmp # 临时存放下载的文件 tar -xzf jdk-<version>-linux-x64.tar.gz # 替换为实际文件名 sudo mv jdk-<version> /usr/local/java/
-
配置环境变量
编辑全局配置文件(影响所有用户):sudo nano /etc/profile
添加以下内容到文件末尾:
export JAVA_HOME="/usr/local/java/jdk-<version>" export PATH=$JAVA_HOME/bin:$PATH
保存后执行
source /etc/profile
使修改立即生效,也可以通过echo $JAVA_HOME
和echo $PATH
确认变量是否正确设置。 -
验证安装结果
终端输入:java -version javac -version
应显示对应版本的详细信息,若提示命令未找到,可能是路径未正确加入
PATH
。
注意:部分旧版Oracle JDK可能需要额外接受许可协议才能完成安装,请仔细阅读解压时的交互提示。
多版本管理与切换(进阶)
开发者常需在不同项目中使用不同JDK版本,这时可以利用update-alternatives
工具灵活切换。
- 注册可用实例
假设已安装两个JDK:/usr/lib/jvm/java-8-openjdk和/usr/local/java/jdk-17,分别执行:sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-openjdk/bin/java 1 sudo update-alternatives --install /usr/bin/java java /usr/local/java/jdk-17/bin/java 2
对编译器重复类似操作:
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-8-openjdk/bin/javac 1 sudo update-alternatives --install /usr/bin/javac javac /usr/local/java/jdk-17/bin/javac 2
- 选择默认版本
sudo update-alternatives --config java # 交互式选择Java运行时环境 sudo update-alternatives --config javac # 选择对应的编译器链接
- 查看当前状态
update-alternatives --display java
输出将显示优先级顺序及正在使用的路径,每次切换后建议重启终端以确保新配置加载。
常见问题排查手册
现象 | 解决方案 |
---|---|
Command 'java' not found |
确保$JAVA_HOME/bin 已添加到$PATH ;检查拼写错误或路径斜杠方向是否正确 |
多个版本冲突导致异常行为 | 使用update-alternatives 明确指定所需版本;避免同时存在同名软链接 |
图形界面程序无法启动 | 某些桌面应用依赖特定环境的图形库支持,尝试更换回OpenJDK或重新安装缺失组件 |
权限不足报错 | 以sudo 身份执行关键步骤(如修改系统级配置文件);检查用户组归属 |
FAQs
Q1: 如何查看当前正在使用的JDK路径?
A: 运行 which java
显示可执行文件的实际位置,结合 ls -l $(which java)
可进一步追溯符号链接指向的真实路径。echo $JAVA_HOME
也会输出环境变量设置的值。
Q2: 安装后为何普通用户无法调用java命令?
A: 因为系统级别的环境变量仅对root有效,解决方法是将出口配置写入用户专属文件(如 ~/.bashrc
),然后执行 source ~/.bashrc
重新加载个人会话的环境变量,对于图形界面登录的用户,还需重启相关应用程序以便