在 Linux 上配置 Java 虚拟机
一 安装 JDK
sudo apt update
sudo apt install openjdk-17-jdk # 或 openjdk-11-jdk、openjdk-8-jdk
sudo dnf install java-17-openjdk-devel # 或 java-11-openjdk-devel
# 老版本 yum:sudo yum install java-11-openjdk-devel
sudo tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /opt/
java -version
javac -version
上述步骤覆盖了常见的安装方式,包管理器安装更省心,手动安装更灵活。
二 配置环境变量
ls /usr/lib/jvm/ # 常见 OpenJDK 目录
readlink -f "$(which java)" # 追踪 java 实际路径,便于确定 JAVA_HOME
echo 'export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
echo 'JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64' | sudo tee -a /etc/profile
echo 'PATH=$JAVA_HOME/bin:$PATH' | sudo tee -a /etc/profile
source /etc/profile
echo $JAVA_HOME
which java && which javac
要点:设置 JAVA_HOME 指向 JDK 根目录,并将 $JAVA_HOME/bin 放在 PATH 前面以确保优先使用。
三 设置 JVM 运行参数
java -Xms512m -Xmx2g -XX:+UseG1GC -jar your-app.jar
echo 'export JAVA_OPTS="-Xms512m -Xmx2g -XX:+UseG1GC"' >> /etc/profile
source /etc/profile
四 多版本共存与切换
sudo update-alternatives --config java
sudo update-alternatives --config javac
五 验证与常见问题
java -version
javac -version
echo $JAVA_HOME
java -XshowSettings:properties -version | grep java.home