首页 > 运维 > CentOS > 正文

CentOS下怎么安装JDK_CentOS系统安装配置Java开发环境详细教程

雪夜
发布: 2025-08-31 10:36:01
原创
969人浏览过
答案:CentOS安装JDK有两种方法:推荐使用yum安装Open-JDK,省心且依赖管理好;若需特定版本则手动下载解压并配置环境变量,关键步骤是设置JAVA_HOME、PATH和CLASSPATH,通过alternatives管理多版本(yum安装)或用别名切换(手动安装),开发者必须装JDK因需javac等工具。

centos下怎么安装jdk_centos系统安装配置java开发环境详细教程

在CentOS系统上安装JDK,对于任何Java开发者来说,都是迈入新项目的第一步,也是最基础的一步。说白了,这事儿不难,但配置环境总有些小细节,稍不注意就可能踩坑。核心思路无非两种:要么借助包管理器

yum
登录后复制
快速部署Open-JDK,要么手动下载压缩包,自己解压配置环境变量。无论哪种,目标都是让你的系统能识别
java
登录后复制
javac
登录后复制
命令,为后续的开发工作打下基础。

老实说,我个人更倾向于使用

yum
登录后复制
来安装Open-JDK,因为它省心,依赖管理也做得好。但如果你有特定版本需求,或者非要用Oracle JDK(虽然现在下载更麻烦了),手动安装也是必经之路。

方法一:利用

yum
登录后复制
安装Open-JDK(推荐,省心)

这是最省事的方法,尤其是在CentOS这种基于RPM的系统上。

立即学习Java免费学习笔记(深入)”;

  1. 检查可用的JDK版本: 在终端里敲入这行命令,你会看到一大堆和Java相关的包。

    yum search java | grep -i --color "jdk"
    登录后复制

    通常,你会看到

    java-1.8.0-openjdk-devel
    登录后复制
    (对应JDK 8)、
    java-11-openjdk-devel
    登录后复制
    (对应JDK 11)之类的。这里的
    devel
    登录后复制
    后缀很重要,它表示安装的是开发工具包(JDK),而不是仅仅运行环境(JRE)。

  2. 安装你需要的版本: 比如,我经常用JDK 8,那命令就是:

    sudo yum install java-1.8.0-openjdk-devel -y
    登录后复制

    如果提示没有权限,记得加

    sudo
    登录后复制
    。系统会帮你处理好所有依赖。

  3. 验证安装: 安装完成后,赶紧跑一下:

    java -version
    javac -version
    登录后复制

    如果能看到正确的版本信息,恭喜你,基本搞定了!

  4. 设置默认Java版本(如果装了多个): CentOS有个很方便的工具叫

    alternatives
    登录后复制
    。如果你系统里装了多个JDK版本,可以用它来切换默认。

    sudo alternatives --config java
    sudo alternatives --config javac
    登录后复制

    它会列出所有可用的Java版本,你输入对应的数字就能选择。

方法二:手动下载并配置JDK(更灵活,但稍显繁琐)

这种方法适用于你需要特定版本的Oracle JDK,或者

yum
登录后复制
仓库里没有你想要的Open-JDK版本。

  1. 下载JDK压缩包: 通常是

    .tar.gz
    登录后复制
    格式。你需要从官网(比如OpenJDK的官方下载页面)下载。这里就不具体写下载链接了,因为版本更新快,链接也可能变。

  2. 上传到CentOS服务器:

    scp
    登录后复制
    或者
    rz
    登录后复制
    命令把下载好的文件传到服务器上。我一般会放到
    ~/Downloads
    登录后复制
    或者直接传到目标安装目录。

  3. 创建安装目录并解压: 我习惯把所有手动安装的软件都放在

    /usr/local
    登录后复制
    下,这样管理起来比较清晰。

    sudo mkdir -p /usr/local/java
    sudo tar -zxvf /path/to/your/jdk-*.tar.gz -C /usr/local/java/
    登录后复制

    解压后,

    /usr/local/java
    登录后复制
    目录下应该会出现一个类似
    jdk1.8.0_xxx
    登录后复制
    jdk-11.0.x
    登录后复制
    的文件夹。

  4. 配置环境变量: 这是手动安装的关键一步。我通常会在

    /etc/profile.d/
    登录后复制
    目录下创建一个新的
    .sh
    登录后复制
    文件,比如
    java.sh
    登录后复制
    ,这样可以避免直接修改
    /etc/profile
    登录后复制
    这个核心文件,也方便管理。

    sudo vim /etc/profile.d/java.sh
    登录后复制

    java.sh
    登录后复制
    里添加以下内容(记得把
    jdk1.8.0_xxx
    登录后复制
    替换成你实际解压出来的文件夹名):

    export JAVA_HOME=/usr/local/java/jdk1.8.0_xxx
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    登录后复制

    保存并退出。

  5. 让环境变量生效:

    帮衣帮-AI服装设计
    帮衣帮-AI服装设计

    AI服装设计神器,AI生成印花、虚拟试衣、面料替换

    帮衣帮-AI服装设计 106
    查看详情 帮衣帮-AI服装设计
    source /etc/profile
    登录后复制

    或者直接重启会话(重新登录SSH)。

  6. 验证安装:

    java -version
    javac -version
    echo $JAVA_HOME
    登录后复制

    确保

    JAVA_HOME
    登录后复制
    指向你安装的路径,并且
    java
    登录后复制
    javac
    登录后复制
    命令能正常运行。

为什么我需要安装JDK,而不是JRE?

这个问题,新手经常会问,但对我们开发者来说,答案其实挺明确的。简单来说,JRE(Java Runtime Environment)是Java程序的运行环境,它只包含Java虚拟机(JVM)和Java核心类库,能让你跑起来别人的Java应用。但如果你想自己写代码、编译代码,那就远远不够了。

JDK(Java Development Kit)才是我们的主力工具包。它在JRE的基础上,额外提供了

javac
登录后复制
(Java编译器)、
jar
登录后复制
(Java归档工具)、
javadoc
登录后复制
(文档生成器)等一系列开发工具。没有
javac
登录后复制
,你的
.java
登录后复制
源文件就无法被编译成
.class
登录后复制
字节码;没有
jar
登录后复制
,你就没法打包你的应用或者库。所以,作为一名开发者,安装JDK是必须的,JRE只是它的一个子集,或者说是运行时的那一部分。我个人觉得,理解这个区别,能帮你更好地理解Java生态,也能避免一些不必要的配置困惑。

如何在CentOS上管理多个JDK版本?

在实际开发中,尤其是在维护老项目或者测试不同Java版本兼容性时,系统里同时存在多个JDK版本是常态。CentOS在这方面,针对

yum
登录后复制
安装的JDK,提供了一个非常优雅的解决方案:
alternatives
登录后复制
命令。

如果你是通过

yum
登录后复制
安装的多个Open-JDK版本(比如JDK 8和JDK 11),你可以这样切换:

sudo alternatives --config java
登录后复制

执行后,你会看到一个列表,上面有你系统里所有通过

alternatives
登录后复制
注册的Java可执行文件,以及它们的优先级。你只需要输入对应的数字,回车,系统就会把默认的
java
登录后复制
命令指向你选择的版本。同理,
javac
登录后复制
也需要这样设置:

sudo alternatives --config javac
登录后复制

这样操作的好处是,它会帮你管理

/usr/bin/java
登录后复制
/usr/bin/javac
登录后复制
这些符号链接,非常方便。

但如果是手动安装的JDK,

alternatives
登录后复制
就帮不上忙了。这时候,管理多个版本主要靠环境变量。我通常会这样做:

  1. 为每个手动安装的JDK设置独立的

    JAVA_HOME
    登录后复制
    比如,一个
    JAVA_HOME_8
    登录后复制
    指向JDK 8,一个
    JAVA_HOME_11
    登录后复制
    指向JDK 11。

  2. 通过修改

    ~/.bashrc
    登录后复制
    ~/.bash_profile
    登录后复制
    来切换。
    我会在这些文件里定义一些别名(alias)或者简单的函数,比如:

    # JDK 8
    alias usejdk8='export JAVA_HOME=/usr/local/java/jdk1.8.0_xxx; export PATH=$JAVA_HOME/bin:$PATH; echo "Switched to JDK 8"'
    
    # JDK 11
    alias usejdk11='export JAVA_HOME=/usr/local/java/jdk-11.0.x; export PATH=$JAVA_HOME/bin:$PATH; echo "Switched to JDK 11"'
    登录后复制

    然后,当你需要切换时,直接在终端输入

    usejdk8
    登录后复制
    usejdk11
    登录后复制
    就行了。当然,每次切换后,你可能需要重新
    source ~/.bashrc
    登录后复制
    或者开一个新的终端会话。

这种手动管理的方式虽然没有

alternatives
登录后复制
那么自动化,但胜

以上就是CentOS下怎么安装JDK_CentOS系统安装配置Java开发环境详细教程的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号