在 ARM64 架构系统离线安装 Oracle Java 8 全流程指南

在 ARM64 架构系统离线安装 Oracle Java 8 全流程指南

在这里插入图片描述

文章目录

  • 在 ARM64 架构系统离线安装 Oracle Java 8 全流程指南
    • 一、引言
    • 二、下载前的准备
      • 2.1 确认系统架构
      • 2.2 注册 Oracle 账号
    • 三、从 Oracle 官方下载 Java 8 for ARM64
      • 3.1 访问 Oracle Java 存档页面
      • 3.2 选择合适的版本
    • 四、安装 Java 8
      • 4.1 上传并解压文件
      • 注意事项
    • 五、配置环境变量
      • 5.1 编辑环境变量文件
      • 5.2 添加环境变量
      • 5.3 使环境变量生效
    • 六、验证 Java 安装
      • 6.1 检查 Java 版本
      • 6.2 检查 `javac` 命令
    • 七、验证 Java 功能
      • 7.1 创建 Java 源文件
      • 7.2 编译 Java 源文件
      • 7.3 创建清单文件(Manifest)
      • 7.4 打包成 JAR 文件
      • 7.5 使用 `java -jar` 命令执行 JAR 文件

一、引言

在当今的软件开发和运行领域,Java 语言凭借其跨平台性和强大的功能,占据着重要的地位。对于 ARM64 架构的系统而言,有时候需要离线安装 Java 8 环境来满足特定的开发或运行需求。本文将详细且通俗易懂地介绍从 Oracle 官方下载 Java 8 安装包,到完成安装、配置环境变量以及验证其可用性的整个过程。

二、下载前的准备

2.1 确认系统架构

首先要明确你的系统是 ARM64 架构。你可以通过在终端输入以下命令来确认:

uname -m

如果输出结果为 aarch64,则表明你的系统是 ARM64 架构。

2.2 注册 Oracle 账号

访问 Oracle 官方账号注册页面,按照页面提示填写必要的信息,如电子邮件地址、密码、姓名等,完成账号注册。注册成功后,使用该账号登录 Oracle 官网。

三、从 Oracle 官方下载 Java 8 for ARM64

3.1 访问 Oracle Java 存档页面

打开浏览器,访问 Oracle Java SE 存档页面。这个页面包含了 Java 8 的历史版本下载链接。

3.2 选择合适的版本

在页面中找到适用于 ARM64 架构的 Linux 版本的 Java 8 JDK。一般来说,你需要下载以 .tar.gz 结尾的压缩包,例如 jdk-8u441-linux-aarch64.tar.gzXXX 代表具体的更新版本号)。点击下载链接,此时会弹出一个确认页面,要求你接受 Oracle 的许可协议,勾选同意后即可开始下载。

四、安装 Java 8

4.1 上传并解压文件

将下载好的 JDK 压缩包上传到目标 ARM64 服务器。然后在终端中执行以下操作:

# 进入存放压缩包的目录,假设压缩包存放在 /tmp 目录下
cd /tmp
# 解压文件
tar -zxvf jdk-8u441-linux-aarch64.tar.gz
# 移动解压后的文件夹到合适的位置,这里以 /opt 为例
sudo mv jdk1.8.0_XXX /opt/jdk8

注意事项

  • 请将 XXX 替换为你实际下载的版本号。
  • 使用 sudo 是因为将文件夹移动到 /opt 目录需要管理员权限。

五、配置环境变量

5.1 编辑环境变量文件

使用 vim 编辑器打开 /etc/profile 文件:

sudo vim /etc/profile

5.2 添加环境变量

在文件末尾添加以下内容:

# 设置 JAVA_HOME 变量,指向 JDK 的安装目录
export JAVA_HOME=/opt/jdk8
# 将 JDK 的 bin 目录添加到 PATH 变量中
export PATH=$JAVA_HOME/bin:$PATH
# 设置 CLASSPATH 变量
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

5.3 使环境变量生效

保存并退出文件后,执行以下命令使环境变量立即生效:

source /etc/profile

六、验证 Java 安装

6.1 检查 Java 版本

在终端输入以下命令来检查 Java 版本:

java -version

如果安装和配置成功,你将看到类似以下的输出:

java version "1.8.0_XXX"
Java(TM) SE Runtime Environment (build 1.8.0_XXX-bXX)
Java HotSpot(TM) 64-Bit Server VM (build XX.XX-bXX, mixed mode)

6.2 检查 javac 命令

执行以下命令检查 javac 命令是否可用:

javac -version

如果输出类似 javac 1.8.0_XXX 的信息,则说明 javac 命令也已正确配置。

七、验证 Java 功能

Java 安装包本身并不自带可供 java -jar 命令执行的示例 JAR 文件,不过我们可以自己创建一个简单的 Java 程序并打包成 JAR 文件来验证 Java 环境的可用性。

7.1 创建 Java 源文件

在任意目录下(例如 /tmp)创建一个简单的 Java 程序,命名为 HelloWorld.java。使用 vim 编辑器创建并编辑该文件:

vim /tmp/HelloWorld.java

vim 中按下 i 键进入插入模式,输入以下代码:

public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}
}

输入完成后,按下 Esc 键退出插入模式,输入 :wq 保存并退出。

7.2 编译 Java 源文件

使用 javac 命令编译 HelloWorld.java 文件:

javac /tmp/HelloWorld.java

如果编译成功,在 /tmp 目录下会出现 HelloWorld.class 文件。

7.3 创建清单文件(Manifest)

使用 vim 编辑器创建清单文件 manifest.mf

vim /tmp/manifest.mf

在文件中输入以下内容:

Main-Class: HelloWorld

保存并退出。

7.4 打包成 JAR 文件

使用 jar 命令将编译后的 .class 文件和清单文件打包成可执行的 JAR 文件:

jar cfm /tmp/HelloWorld.jar /tmp/manifest.mf /tmp/HelloWorld.class

7.5 使用 java -jar 命令执行 JAR 文件

在终端输入以下命令:

java -jar /tmp/HelloWorld.jar

如果 Java 环境配置正确,你将在终端看到输出:

Hello, World!

这表明你的 Java 环境可以正常使用 java -jar 命令来执行 JAR 程序。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/16641.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

栈的简单介绍

一.栈 栈是一种先进后出的结构:(先出来的是45,要出12就必须先把前面的数据全部出完。) 2.实例化一个栈对象: 3.入栈: 4.出栈:(当走完pop就直接弹出45了。) 5.出栈的…

java韩顺平最新教程,Java工程师进阶

简介 HikariCP 是用于创建和管理连接,利用“池”的方式复用连接减少资源开销,和其他数据源一样,也具有连接数控制、连接可靠性测试、连接泄露控制、缓存语句等功能,另外,和 druid 一样,HikariCP 也支持监控…

HCIA项目实践--RIP相关原理知识面试问题总结回答

9.4 RIP 9.4.1 补充概念 什么是邻居? 邻居指的是在网络拓扑结构中与某一节点(如路由器)直接相连的其他节点。它们之间可以直接进行通信和数据交互,能互相交换路由信息等,以实现网络中的数据转发和路径选择等功能。&am…

【ThreeJS Basics 1-3】Hello ThreeJS,实现第一个场景

文章目录 环境创建一个项目安装依赖基础 Web 页面概念解释编写代码运行项目 环境 我的环境是 node version 22 创建一个项目 首先,新建一个空的文件夹,然后 npm init -y , 此时会快速生成好默认的 package.json 安装依赖 在新建的项目下用 npm 安装依…

【JavaEE进阶】依赖注入 DI详解

目录 🌴什么是依赖注入 🎄依赖注入的三种方法 🚩属性注⼊(Field Injection) 🚩Setter注入 🚩构造方法注入 🚩三种注⼊的优缺点 🌳Autowired存在的问题 🌲解决Autowired存在的…

在Mac arm架构终端中运行 corepack enable yarn 命令,安装yarn

文章目录 1. 什么是 Corepack?2. 运行 corepack enable yarn 的作用3. 如何运行 corepack enable yarn4. 可能遇到的问题及解决方法问题 1:corepack 命令未找到问题 2:Yarn 未正确安装问题 3:权限问题 5. 验证 Yarn 是否启用成功6…

16.React学习笔记.React更新机制

一. 发生更新的时机以及顺序## image.png props/state改变render函数重新执行产生新的VDOM树新旧DOM树进行diff计算出差异进行更新更新到真实的DOM 二. React更新流程## React将最好的O(n^3)的tree比较算法优化为O(n)。 同层节点之间相互比较,不跨节点。不同类型的节…

SQL数据清理:去除字段值中的多余符号(Demo例子)

目录 前言1. 基础2. 进阶 前言 Excel中有大量不合法的符号,导入到系统之后,数据库有很多脏数据,对此下述展开sql的清洗教程 在数据库的文本字段中,可能会存在多余的逗号或符号,如,销售,, 或 二手车,销售,,这种情况 希…

计算机组成原理

观看地址如下【2019版】1.3.2 性能指标2——速度_哔哩哔哩_bilibili 第一章 计算机系统概述 了解 #低电平高电平 #计算机的发展 主要是因为逻辑元件的限制 选择题 微处理器的发展 这里的机器字长为 软硬件的发展 几种指令和数据流 计算机的系统结构 需求产生变化 电信号…

基于MATLAB的沥青试样孔隙率自动分析——原理详解与代码实现

摘要 在材料科学与土木工程领域,沥青孔隙率是评价其耐久性和稳定性的重要指标。本文提出一种基于图像处理的孔隙率自动计算方法,通过MATLAB实现灰度化、对比度增强、形态学处理等关键步骤,最终输出试样孔隙率。代码注释清晰,可直…

【嵌入式Linux应用开发基础】open函数与close函数

目录 一、open函数 1.1. 函数原型 1.2 参数说明 1.3 返回值 1.4. 示例代码 二、close函数 2.1. 函数原型 2.2. 示例代码 三、关键注意事项 3.1. 资源管理与泄漏防范 3.2. 错误处理的严谨性 3.3. 标志(flags)与权限(mode&#xff…

【通俗易懂说模型】一篇弄懂几个经典CNN图像模型(AlexNet、VGGNet、ResNet)

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀深度学习_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 1. 前言 2. …

Android 14.0 Launcher3单层模式workspace中app列表页排序功能实现

1.概述 在14.0的定制化开发中,对于Launcher3的功能定制也是好多的,而对于单层app列表页来说排序功能的开发,也是常有的功能这就需要了解加载app数据的流程,然后根据需要进行排序就可以了,接下来就来实现这个功能 如图: 2. Launcher3单层模式workspace中app列表页排序功能…

8K样本在DeepSeek-R1-7B模型上的复现效果

7B Model and 8K Examples: Emerging Reasoning with Reinforcement Learning is Both Effective and Effic (notion.site) 港科大助理教授何俊贤的团队以Qwen2.5-Math-7B(基础模型)为起点,直接对其进行强化学习。整个过程中,没有…

四、自然语言处理_08Transformer翻译任务案例

0、前言 在Seq2Seq模型的学习过程中,做过一个文本翻译任务案例,多轮训练后,效果还算能看 Transformer作为NLP领域的扛把子,对于此类任务的处理会更为强大,下面将以基于Transformer模型来重新处理此任务,看…

MATLAB 生成脉冲序列 pulstran函数使用详解

MATLAB 生成脉冲序列 pulstran函数使用详解 目录 前言 一、参数说明 二、示例一 三、示例二 总结 前言 MATLAB中的pulstran函数用于生成脉冲序列,支持连续或离散脉冲。该函数通过将原型脉冲延迟并相加,生成脉冲序列,适用于信号处理和系统…

算法练习——滑动窗口

前言:滑动窗口的难点不在于怎么编写代码,而在于如何想到这题是用滑动窗口的算法去解决。其次滑动窗口的左端和右端在滑动时窗口内数据存在单调性。 一:长度最小的子数组 题目要求: 解题思路: 对于第一道滑动窗口算法…

Zabbix-监控SSL证书有效期

背景 项目需要,需要监控所有的SSL证书的有效期,因此需要自定义一个监控项 实现 创建自定义脚本 在Zabbix的scripts目录(/etc/zabbix/scripts/)下创建一个新的shell脚本check_ssl.sh,内容如下 #!/bin/bash time$(echo | openssl s_client…

VSCode中出现“#include错误,请更新includePath“问题,解决方法

1、出现的问题 在编写C程序时,想引用头文件但是出现如下提示: (1)首先检查要引用的头文件是否存在,位于哪里。 (2)如果头文件存在,在编译时提醒VSCode终端中"#include错误&am…

讯方·智汇云校华为授权培训机构的介绍

官方授权 华为授权培训服务伙伴(Huawei Authorized Learning Partner,简称HALP)是获得华为授权,面向公众(主要为华为企业业务的伙伴/客户)提供与华为产品和技术相关的培训服务,培养华为产业链所…