核心内容摘要
为什么选择ChilliCream GraphQL平台:5大核心优势解析
前言Java作为企业级应用的主流开发语言在Linux环境中安装配置JDKJava Development Kit是每个后端开发者、运维工程师的必备技能。
本文将详细对比OpenJDK与Oracle JDK提供APT/YUM包管理、手动安装、多版本管理三种主流安装方案涵盖环境变量配置、版本切换、性能调优等实战技巧助你快速搭建稳定的Java运行环境。
安装前准备选择合适的JDKJDK版本选择建议版本 类型 特点 适用场景OpenJDK 11 开源免费 LTS长期支持企业主流 生产环境首选OpenJDK 17 开源免费 最新LTS版本性能优化 新项目开发OpenJDK 8 开源免费 经典稳定生态成熟 旧系统维护Oracle JDK 商业授权 官方版本功能完整 商业项目系统环境检查bash
查看系统信息cat /etc/os-releaseuname -m # x86_6464位或i68632位
检查现有Java版本java -version 2/dev/null || echo “未安装Java”which java # 查看安装位置
清理旧版本如需sudo apt remove --purge openjdk-* # Ubuntusudo yum remove java-* # CentOS
方法一APT包管理器安装Ubuntu/Debian安装OpenJDK 11推荐生产环境bash更新包列表sudo apt update安装OpenJDK 11sudo apt install openjdk-11-jdk -y安装完整版包含源码和文档sudo apt install openjdk-11-jdk openjdk-11-source -y
安装OpenJDK 17最新LTSbashUbuntu
2
04默认包含JDK 17sudo apt install openjdk-17-jdk -y早期版本需添加仓库sudo add-apt-repository ppa:openjdk-r/ppa -ysudo apt updatesudo apt install openjdk-17-jdk -y
安装OpenJDK 8兼容旧项目bashsudo apt install openjdk-8-jdk -y如果找不到包先更新仓库sudo add-apt-repository ppa:openjdk-r/ppa -ysudo apt updatesudo apt install openjdk-8-jdk -y
安装Oracle JDK需官网同意协议bash添加Oracle JDK仓库sudo add-apt-repository ppa:linuxuprising/java -ysudo apt update安装Oracle JDK 17sudo apt install oracle-java17-installer -y安装时会提示接受许可协议
方法二YUM/DNF包管理器安装CentOS/RHELCentOS 8/RHEL 8安装OpenJDKbash查看可用的JDK版本dnf search openjdk安装OpenJDK 11sudo dnf install java-11-openjdk java-11-openjdk-devel -y安装OpenJDK 17sudo dnf install java-17-openjdk java-17-openjdk-devel -y安装OpenJDK 8sudo dnf install java-
1.
0-openjdk java-
1.
0-openjdk-devel -y
CentOS 7安装OpenJDKbash启用EPEL仓库可选sudo yum install epel-release -y安装OpenJDK 11sudo yum install java-11-openjdk java-11-openjdk-devel -y或安装OpenJDK 8sudo yum install java-
1.
0-openjdk java-
1.
0-openjdk-devel -y
安装Oracle JDKCentOSbash下载Oracle JDK RPM包wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm安装RPM包sudo rpm -ivh jdk-17_linux-x64_bin.rpm或使用yum安装本地RPM自动处理依赖sudo yum localinstall jdk-17_linux-x64_bin.rpm
方法三手动安装任意Linux发行版下载JDK安装包bash创建安装目录sudo mkdir -p /usr/lib/jvmcd /usr/lib/jvm下载OpenJDK以17为例从Adoptium下载原AdoptOpenJDKwget https://github.com/adoptium/temurin17-binaries/releases/download/jdk-
17.
8%2B7/OpenJDK17U-jdk_x64_linux_hotspot_
17.
8_
tar.gz或从Oracle官网下载需登录wget --no-check-certificate --no-cookies --header “Cookie: oraclelicenseaccept-securebackup-cookie” https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz解压与安装bash解压下载的压缩包sudo tar -xzf OpenJDK17U-jdk_x64_linux_hotspot_
17.
8_
tar.gz重命名目录可选sudo mv jdk-
17.
87 jdk-17设置目录权限sudo chown -R root:root /usr/lib/jvm/jdk-
配置环境变量bash方法A修改/etc/profile系统全局sudo nano /etc/profile在文件末尾添加export JAVA_HOME/usr/lib/jvm/jdk-17export JRE_HOMEJAVAHOME/jreexportCLASSPATH.:JAVA_HOME/jre export CLASSPATH.:JAVAHOME/jreexportCLASSPATH.:JAVA_HOME/lib:JREHOME/libexportPATHJRE_HOME/lib export PATHJREHOME/libexportPATHJAVA_HOME/bin:$PATH使配置生效source /etc/profilebash方法B修改用户级配置/.bashrc或/.zshrcecho ‘export JAVA_HOME/usr/lib/jvm/jdk-17’ ~/.bashrcecho ‘export PATHJAVAHOME/bin:JAVA_HOME/bin:JAVAHOME/bin:PATH’ ~/.bashrcsource ~/.bashrc
配置替代系统update-alternativesbash配置java命令sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-17/bin/java 1sudo update-alternatives --config java # 选择版本配置javac编译器sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-17/bin/javac 1sudo update-alternatives --config javac配置jar打包工具sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk-17/bin/jar 1
多版本JDK管理与切换查看已安装的JDK版本bash查看update-alternatives配置sudo update-alternatives --display java查看所有Java安装ls -la /usr/lib/jvm/查看当前使用的Java版本java -versionwhich java
切换默认JDK版本bash交互式切换sudo update-alternatives --config java输出示例有 3 个候选项可用于替换 java (提供 /usr/bin/java)。
选择 路径 优先级 状态------------------------------------------------------------* 0 /usr/lib/jvm/jdk-17/bin/java 1 自动模式1 /usr/lib/jvm/jdk-11/bin/java 2 手动模式2 /usr/lib/jvm/jdk-8/bin/java 3 手动模式3 /usr/lib/jvm/jdk-17/bin/java 1 手动模式要维持当前值[*]请按回车键或者键入选择的编号2临时切换版本仅当前会话bash临时使用JDK 11export JAVA_HOME/usr/lib/jvm/jdk-11export PATHJAVAHOME/bin:JAVA_HOME/bin:JAVAHOME/bin:PATH验证java -version
环境变量配置详解JAVA_HOME标准配置bash检测JAVA_HOME是否设置echo $JAVA_HOME如果没有JAVA_HOME自动查找设置if [ -z KaTeX parse error: Expected EOF, got # at position 24: …E ]; then #̲ 查找java命令位置 …(which java)if [ -n KaTeX parse error: Expected EOF, got # at position 28: …; then #̲ 解析JAVA_HOME …(dirname $(dirname $(readlink -f $JAVA_PATH)))export JAVA_HOMEfifi
完整环境变量配置示例bash~/.bashrc或/etc/profile中添加Java环境配置export JAVA_8_HOME/usr/lib/jvm/jdk-8export JAVA_11_HOME/usr/lib/jvm/jdk-11export JAVA_17_HOME/usr/lib/jvm/jdk-17设置默认JDKexport JAVA_HOME$JAVA_11_HOME添加PATHexport PATHJAVAHOME/bin:JAVA_HOME/bin:JAVAHOME/bin:PATH类路径配置export CLASSPATH.:JAVAHOME/lib/dt.jar:JAVA_HOME/lib/dt.jar:JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jarJVM参数可选export JAVA_OPTS“-Xms512m -Xmx2g -XX:Us
GC -Dfile.encodingUTF-8”
配置生效检查bash重新加载配置source ~/.bashrc或source /etc/profile验证配置echo $JAVA_HOMEecho $PATH | grep java
验证安装与测试基础验证命令bash验证Java安装java -version期望输出包含openjdk version “
17.