Ubuntu下Java版本更新方法
APT是Ubuntu默认的包管理工具,可方便地安装、更新OpenJDK(Ubuntu推荐的Java实现)。
sudo apt update,同步系统与软件源的最新信息,确保获取到最新的Java版本。sudo apt install openjdk-<version>-jdk(将<version>替换为目标版本,如17、11、8)。例如,安装OpenJDK 17的命令为sudo apt install openjdk-17-jdk。java -version,若输出显示目标版本(如openjdk version "17.0.10" 2024-05-06),则说明更新成功。sudo update-alternatives --config java,系统会列出所有已安装的Java版本及对应序号。输入目标版本的序号并按回车键,即可将其设为默认版本。若APT源中的Java版本较旧,可通过添加PPA(个人软件包档案)获取更新的OpenJDK版本(如OpenJDK 21)。
sudo add-apt-repository ppa:linuxuprising/java,添加Linux Uprising提供的Java PPA(包含最新稳定版Java)。sudo apt update,同步PPA中的软件包信息。sudo apt install openjdk-<version>-jdk(如sudo apt install openjdk-21-jdk),安装完成后通过java -version验证版本。若需要同时安装多个Java版本并灵活切换,可使用jenv或SDKMAN等工具,它们提供了更便捷的版本管理功能。
jenv是一个轻量级的Java版本管理工具,支持全局/局部版本切换。
sudo apt update && sudo apt install git curl,安装jenv所需的工具。git clone https://github.com/jenv/jenv.git ~/.jenv,将jenv目录添加到用户主目录。~/.bashrc文件(若使用bash),添加以下内容:export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
保存后运行source ~/.bashrc,使配置生效。jenv add /usr/lib/jvm/java-11-openjdk-amd64。jenv global <version>(如jenv global 11.0.24);jenv local <version>(仅对当前目录生效)。java -version,输出应显示jenv管理的当前版本。SDKMAN是专为管理SDK设计的工具,支持Java、Maven等多个工具的版本切换。
curl -s "https://get.sdkman.io" | bash,下载并安装SDKMAN。安装完成后运行source "$HOME/.sdkman/bin/sdkman-init.sh",激活环境。sdk list java,系统会列出所有可用的Java版本(包括OpenJDK、Oracle JDK)。sdk install java <version>(如sdk install java 17.0.11-open)。sdk default java <version>;sdk use java <version>。java -version,输出应显示SDKMAN管理的当前版本。sudo apt remove openjdk-<old-version>-jdk命令卸载,释放系统空间。