Ubuntu更新Java编译器(JDK)的常用方法
包管理器是Ubuntu更新软件的标准方式,适用于OpenJDK等开源版本,能自动处理依赖关系。
sudo apt update,同步系统与软件源的最新版本信息。sudo apt upgrade,系统会自动升级所有可更新的软件包(包括已安装的JDK)。若需更新特定版本(如OpenJDK 17),可使用sudo apt install openjdk-17-jdk,该命令会自动替换旧版本(若存在)。java -version查看Java运行时版本,javac -version查看Java编译器版本,确认输出为最新版本。若包管理器未提供所需版本(如Oracle JDK最新版),可手动下载安装包部署。
.tar.gz(Linux)安装包。tar -zxvf jdk-<version>-linux-x64.tar.gz解压文件,将解压后的文件夹移动到/usr/lib/jvm/(系统Java目录),如sudo mv jdk-17.0.8 /usr/lib/jvm/。update-alternatives工具注册新版本,并设置为默认:
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-<version>/bin/javac 1sudo update-alternatives --config javac,根据提示选择新版本的编号。javac -version,确认输出为新版本信息。若包管理器中的OpenJDK版本滞后,可通过PPA源(个人软件包档案)安装更新。
sudo add-apt-repository ppa:linuxuprising/java(以linuxuprising的OpenJDK PPA为例),添加包含最新版本的软件源。sudo apt update同步新源,再执行sudo apt install openjdk-<version>-jdk(如openjdk-21-jdk)安装最新版本。update-alternatives配置默认编译器版本。JAVA_HOME或PATH前,建议备份相关配置文件(如~/.bashrc)。sudo获取root权限,避免文件权限错误。update-alternatives --config java/javac随时切换,或使用jenv、sdkman等工具简化管理。