Ubuntu中更新Java版本的常用方法
在更新Java前,建议先完成以下操作:
sudo apt update && sudo apt upgrade -y,确保系统及现有软件包为最新版本,避免兼容性问题。java -version,确认当前系统中安装的Java版本(如openjdk-11-jdk)及路径(如/usr/lib/jvm/java-11-openjdk-amd64)。APT是Ubuntu默认的软件包管理工具,操作简单且能自动处理依赖关系,适合安装官方维护的OpenJDK版本。
sudo apt install openjdk-17-jdk
若需安装其他版本(如OpenJDK 8、11),将命令中的17替换为对应版本号即可。java -version,若输出显示新版本(如openjdk version "17.0.10" 2024-05-06),则说明安装成功。sudo update-alternatives --config java
系统会列出所有已安装的Java版本及编号,输入对应编号并按回车键即可。若需要安装Oracle JDK(如企业版或特定补丁版本),需手动下载并配置:
.tar.gz格式安装包(如jdk-17.0.10_linux-x64_bin.tar.gz)。/usr/lib/jvm),并将下载的安装包解压至此:sudo mkdir -p /usr/lib/jvm
sudo tar -xzf jdk-17.0.10_linux-x64_bin.tar.gz -C /usr/lib/jvm
解压后会生成jdk-17.0.10目录。~/.bashrc文件(用户级配置)或/etc/profile文件(系统级配置),在末尾添加以下内容:export JAVA_HOME=/usr/lib/jvm/jdk-17.0.10
export PATH=$JAVA_HOME/bin:$PATH
保存后运行source ~/.bashrc(或source /etc/profile)使配置生效。update-alternatives命令将手动安装的Java添加到系统备选列表,并设置为默认:sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-17.0.10/bin/java 1
sudo update-alternatives --config java
选择新安装的Oracle JDK对应的编号即可。若需要频繁切换多个Java版本(如开发测试不同项目),可使用jenv或SDKMAN等工具,实现更灵活的版本管理。
jenv是一个轻量级的Java版本管理工具,支持全局/局部切换版本。
sudo apt update
sudo apt install git curl
git clone https://github.com/jenv/jenv.git ~/.jenv
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(jenv init -)"' >> ~/.bashrc
source ~/.bashrc
openjdk-8-jdk、openjdk-11-jdk),然后将其添加到jenv:jenv add /usr/lib/jvm/java-8-openjdk-amd64
jenv add /usr/lib/jvm/java-11-openjdk-amd64
jenv global 11.0.24(11.0.24为Java版本号,可通过jenv versions查看)。jenv local 8.0.422(会在当前目录生成.java-version文件,仅影响该目录下的项目)。SDKMAN是专门用于管理软件开发工具包的工具,支持Java、Maven、Gradle等多种工具。
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
SDK list java查看可用版本,然后安装所需版本(如OpenJDK 17):sdk install java 17.0.11-open
sdk default java 17.0.11-open。sdk use java 8.0.422-open。sudo apt remove openjdk-8-jdk(以OpenJDK 8为例)卸载,释放系统空间。