Ubuntu22.04.5 安装 OracleJDK1.8

之前上传的 CSDN,水印就懒得再做处理了

获取安装包

访问 Oracle 官网,在页面中找到 java 产品,进入 Java 产品下载页面

这次安装的是 1.8 的版本,直接划到最下面,找到 Java8 的标签,点击

现在 Oracle JDK 1.8 的下载需要 Oracle 账户,这个注册登陆一下就可以了

这么多的版本,选择你的 Linux 适合的版本

关于查看 Ubuntu 的系统架构,可以输入下面的命令

uname -m # 这个直接显示架构
lscpu # 这个显示更多的信息

综上,我选择下载 x64 Compressed Archive 的安装包

上传到 Ubuntu22.04.5

这个 ssh 工具远程登陆传输一下即可,例如我使用的是 NxShell,直接点击就可以使用 SFTP 远程传输文件到 Ubuntu 系统

我是上传到了 /home/charlie/Downloads/pack 目录中,因为课程用的是 1.8 中版本为 192 的,我直接就使用了课程的压缩包,原理是一样的

解压压缩包

输入下面的命令解压压缩包到当前目录(当然可以更改目录,为了方便我就不修改了)

tar -zxvf ./jdk-8u192-linux-x64.tar.gz

再次查看目录的情况,发现多了解压后的目录,把这个目录的全路径复制下来(可以进入后使用 pwd 获取全路径)

配置环境变量

配置环境的方式挺多的,列举几个

配置环境变量的方式(部分)

用户级别的配置文件

~/.bashrc

  • 用途:为当前用户的交互式非登录 Shell 设置环境变量和别名

  • 加载时机:每次打开新的终端窗口(非登录 Shell)时加载

  • 特点:

    • 适用于需要在每次启动终端时自动执行的命令和变量设置
    • 不会在用户登录时自动加载,除非在 ~/.profile 中显式调用

~/.profile

  • 用途:为当前用户的登录 Shell 设置环境变量和启动程序

  • 加载时机:用户通过控制台或远程登录(如 SSH)时加载一次

  • 特点:

    • 适用于需要在用户登录时设置的环境变量和启动程序。
    • 通常会在文件末尾调用 ~/.bashrc,以确保非登录 Shell 也能加载相关配置

全局级别的配置文件

/etc/environment

  • 用途:为所有用户设置环境变量

  • 加载时机:系统启动时由 PAM 模块加载,适用于所有 Shell 类型

  • 特点:

    • 不需要使用 export 关键字,直接以 VARIABLE_NAME="value" 的形式定义
    • 适用于系统范围内的环境变量设置,如 Java 路径、代理设置等

/etc/profile/etc/profile.d/

  • 用途:为所有用户的登录 Shell 设置环境变量和启动程序

  • 加载时机:用户通过控制台或远程登录时加载

  • 特点:

    • /etc/profile 会遍历并执行 /etc/profile.d/ 目录下的所有可执行脚本
    • 适合需要全局共享的环境变量和启动脚本

临时设置环境变量

在终端中直接导出

export VARIABLE_NAME="value"
  • 用途:为当前 Shell 会话临时设置环境变量

  • 特点:

    • 变量仅在当前终端窗口有效,关闭后失效
    • 适用于临时测试或调试

在当前的 Shell 会话中设置环境变量

新的 Shell 会话无效

使用 env 命令

env VARIABLE_NAME="value" command
  • 用途:在运行特定命令时临时设置环境变量

  • 特点:

    • 不影响当前 Shell 的其他部分,仅对指定命令生效

配置 Java 环境变量

为了方便,设置在了 ~/.bashrc

vim ~/.bashrc

设置环境变量(这个时候就用到了之前的 jdk 解压路径了)

export JAVA_HOME=/home/charlie/Downloads/pack/jdk1.8.0_192
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

在当前终端会话中重新加载并应用 ~/.bashrc 文件中的配置更改

source ~/.bashrc

测试

在新的 Shell 会话中测试一下能不能正常输出 java 的版本

java -version

posted @ 2025-04-06 20:15  Charlie_Byte  阅读(277)  评论(0)    收藏  举报