Linux环境中更新Java的实用指南
一、更新前检查与准备
java -version、javac -version、which java、which javac二、方法一 使用包管理器更新(推荐)
sudo apt update && sudo apt install openjdk-17-jdksudo apt upgrade openjdk-17-jdksudo yum install java-17-openjdk-develsudo dnf install java-17-openjdk-develsudo zypper install java-17-openjdk-develjava -version、javac -version三、方法二 手动安装与配置环境变量
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gzsudo tar -xzf jdk-17_linux-x64_bin.tar.gz -C /usr/local//etc/profile.d/jdk.sh):
sudo nano /etc/profile.d/jdk.shexport JAVA_HOME=/usr/local/jdk-17export PATH=$JAVA_HOME/bin:$PATHsource /etc/profile.d/jdk.shjava -version、javac -version四、方法三 多版本管理与切换
sudo update-alternatives --install /usr/bin/java java /usr/local/jdk-17/bin/java 2000sudo update-alternatives --install /usr/bin/javac javac /usr/local/jdk-17/bin/javac 2000sudo update-alternatives --config java(同样可对 javac 执行)update-alternatives --display javasudo update-alternatives --remove java /usr/local/jdk-17/bin/javacurl -s "https://get.sdkman.io" | bash && source "$HOME/.sdkman/bin/sdkman-init.sh"sdk install java 17.0.9-tem、sdk use java 17.0.9-tem、sdk default java 17.0.9-temgit clone https://github.com/jenv/jenv.git ~/.jenv && echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bashrc && echo 'eval "$(jenv init -)"' >> ~/.bashrc && source ~/.bashrcjenv add /usr/lib/jvm/jdk-17、jenv global 17、jenv local 11五、验证与常见问题处理
java -version、javac -versionwhich java、readlink -f $(which java)(确认指向新版本)echo $JAVA_HOME、echo $PATH/etc/profile.d/jdk.sh 或 ~/.bashrc),并执行 source 重载;或新开终端测试。update-alternatives --config java 统一默认版本,确保 java 与 javac 指向同一 JDK。sudo apt remove openjdk-11-jdk 或 sudo yum remove java-11-openjdkjava.home。