当前位置: 首页 > news >正文

Linux中配置Java环境变量

基本工作

1.官网下载java 1.8地址(需要注册一个oracle账户):

Java Downloads | Oracle

点击上面的链接,滚动页面到最下面就可以看到下载界面,如下图

选择适合自己系统的版本。

本文选用 jdk-8u431-linux-x64.tar.gz 。

2.使用传输工具如 FinalShell、WinSCP等把jdk-8u431-linux-x64.tar.gz 传输到虚拟机中opt目录下。

3.解压 jdk-8u431-linux-x64.tar.gz 到 opt 目录下,并查看是否成功,命令: 

tar -zxvf  jdk-8u431-linux-x64.tar.gz -C /opt/ls

4.解压后,你应该在 /opt/ 目录下看到一个名为 jdk1.8.0_431 的目录(具体名称可能因版本不同而有所变化)。你可以进入该目录并查看其内容:

cd /opt/jdk1.8.0_431ls -l

配置环境变量

解压完成后,你还需要配置环境变量。你可以选择将配置写入 ~/.bashrc/etc/profile,具体步骤如下:

仅对当前用户生效

(本文使用这个方式)

编辑 ~/.bashrc 文件:

nano ~/.bashrc

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

export JAVA_HOME=/opt/jdk1.8.0_431
export PATH=$PATH:$JAVA_HOME/bin

保存并退出 nano,然后重新加载配置文件:

source ~/.bashrc
对所有用户生效

编辑 /etc/profile 文件:

sudo nano /etc/profile

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

export JAVA_HOME=/opt/jdk1.8.0_431
export PATH=$PATH:$JAVA_HOME/bin

保存并退出 nano,然后重新加载配置文件:

source /etc/profile

验证配置

无论你选择哪个文件,保存并重新加载配置文件后,都可以通过以下命令验证 JAVA_HOMEPATH 环境变量是否正确设置:

echo $JAVA_HOME
echo $PATH

运行 java -version 命令,检查是否使用了你配置的 Java 版本:

java -version

注意

如果运行 java -version 命令,出现的是系统自带的Java信息(openjdk 等三行内容)。

步骤 1: 确认 Java 安装路径

首先,确认 Java 的安装路径。假设你将 Java 解压到了 /opt/jdk1.8.0_431 目录下。

步骤 2: 注册 Java 到 update-alternatives

使用 update-alternatives 命令将新安装的 Java 注册到系统中。打开终端,输入以下命令:

sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_431/bin/java 1
步骤 3: 配置 Java 为默认版本

注册完成后,设置新安装的 Java 为默认版本:

sudo update-alternatives --config java

这个命令会列出所有已注册的 Java 版本,让你选择一个作为默认版本。选择你刚刚注册的版本即可。

步骤 4: 配置环境变量

编辑 ~/.bashrc/etc/profile 文件,添加 Java 环境变量。你可以使用 nanovi 编辑器来编辑文件。例如,使用 nano 编辑器:

nano ~/.bashrc

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

export JAVA_HOME=/opt/jdk1.8.0_431
export PATH=$PATH:$JAVA_HOME/bin

nano 编辑器中,你可以使用以下步骤来保存文件并退出:

  1. 按 Ctrl + O 保存文件。
  2. 按 Enter 确认保存路径。
  3. 按 Ctrl + X 退出 nano

保存并关闭文件。如果你使用的是 vi 编辑器,按 Esc 键,然后输入 :wq 保存并退出。

步骤 5: 重新加载配置文件

重新加载配置文件,使环境变量生效:

source ~/.bashrc

source /etc/profile
步骤 6: 验证 Java 版本

再次运行 java -version 命令,检查是否使用了你配置的 Java 版本:

java -version

你应该看到输出显示的是 /opt/jdk1.8.0_431 路径下的 Java 版本信息。

步骤 7: 验证 JAVA_HOME 环境变量

为了确保 JAVA_HOME 环境变量也正确设置,可以运行以下命令:

echo $JAVA_HOME

你应该看到输出显示的是 /opt/jdk1.8.0_431

相关文章:

Linux中配置Java环境变量

基本工作 1.官网下载java 1.8地址(需要注册一个oracle账户): Java Downloads | Oracle 点击上面的链接,滚动页面到最下面就可以看到下载界面,如下图 选择适合自己系统的版本。 本文选用 jdk-8u431-linux-x64.tar.g…...

完全自定义Qt翻译功能,不使用Qt Linguist的.ts 和 .qm类型翻译

这篇文章展示了集成Qt Linguist 的功能。 但是有时候Qt的翻译功能比较繁琐,我们简单项目只需要使用本地化功能,将中文字符串导入到项目中,避免编码格式问题导致的乱码。 只需要使用一个简单的json或者其他格式的本地文件作为映射的key/value.…...

551 灌溉

常规解法&#xff1a; #include<bits/stdc.h> using namespace std; int n,m,k,t; const int N105; bool a[N][N],b[N][N]; int cnt; //设置滚动数组来存贮当前和下一状态的条件 //处理传播扩散问题非常有效int main() {cin>>n>>m>>t;for(int i1;i&l…...

php函数性能优化中应注意哪些问题

PHP 函数性能优化中的注意事项 在 PHP 应用中优化函数性能对于提升整体运行效率至关重要。以下是一些需要注意的关键问题&#xff1a; 1. 避免内联变量 将变量内联到函数调用中会增加不必要的开销。例如&#xff1a; function sum($a, $b) {return $a $b; }// 不要这样做&…...

安科瑞 Acrel-1000DP 分布式光伏监控系统在工业厂房分布式光伏发电项目中的应用

吕梦怡 18706162527 摘 要&#xff1a;常规能源以煤、石油、天然气为主&#xff0c;不仅资源有限&#xff0c;而且会造成严重的大气污染&#xff0c;开发清洁的可再生能源已经成为当今发展的重要任务&#xff0c;“节能优先&#xff0c;效率为本”的分布式发电能源符合社会发…...

鼠标自动移动防止锁屏的办公神器 —— 定时执行专家

目录 ◆ 如何设置 ◇ 方法1&#xff1a;使用【执行Nircmd命令】任务 ◇ 方法2&#xff1a;使用【模拟键盘输入】任务 ◆ 定时执行专家介绍 ◆ 定时执行专家最新版下载 ◆ 如何设置 ◇ 方法1&#xff1a;使用【执行Nircmd命令】任务 1、点击工具栏第一个图标【新建任务】&…...

各种特种无人机快速发展,无人机反制技术面临挑战

随着科技的飞速发展&#xff0c;各种特种无人机在军事、民用等领域得到了广泛应用&#xff0c;其性能不断提升&#xff0c;应用场景也日益丰富。然而&#xff0c;无人机反制技术的发展确实面临一定的挑战&#xff0c;难以完全跟上无人机技术的快速发展步伐。以下是对这一问题的…...

深入学习RabbitMQ的Direct Exchange(直连交换机)

RabbitMQ作为一种高性能的消息中间件&#xff0c;在分布式系统中扮演着重要角色。它提供了多种消息传递模式&#xff0c;其中Direct Exchange&#xff08;直连交换机&#xff09;是最基础且常用的一种。本文将深入介绍Direct Exchange的原理、应用场景、配置方法以及实践案例&a…...

HTML实战课堂之启动动画弹窗

一&#xff1a;代码片段讲解 小提示&#xff1a;下面是一个包含启动页和弹窗的完整示例。这个示例包括一个简单的启动页和一个弹窗&#xff0c;当用户点击启动页上的按钮时&#xff0c;会显示弹窗。 1. **HTML结构**&#xff1a; - #startPage&#xff1a;启动页&#xff0c;包…...

将本地的 Git 仓库上传到 GitHub 上(github没有该仓库)

文章目录 步骤 1&#xff1a;在 GitHub 上创建新仓库步骤 2&#xff1a;配置本地仓库步骤 3&#xff1a;添加远程仓库地址步骤 4&#xff1a;推送本地代码到 GitHub验证上传 步骤 1&#xff1a;在 GitHub 上创建新仓库 登录 GitHub&#xff1a; 打开浏览器并访问 GitHub。使用自…...

【Linux】模拟Shell命令行解释器

一、知识补充 1.1 snprintf snprintf() 是 C语言的一个标准库函数&#xff0c;定义在<stdio.h>头文件中。 snprintf() 函数的功能是格式化字符串&#xff0c;并将结果存储在指定的字符数组中。该函数的原型如下&#xff1a; int snprintf(char *str, size_t size, con…...

G-Star Landscape 2.0 重磅发布,助力开源生态再升级

近日&#xff0c;备受行业瞩目的 G-Star Landscape 迎来了其 2.0 版本的发布&#xff0c;这一成果标志着 GitCode 在开源生态建设方面又取得了重要进展。 G-Star Landscape仓库链接&#xff1a; https://gitcode.com/GitCode-official-team/G-Star-landscape 2024 GitCode 开…...

Lianwei 安全周报|2024.1.7

以下是本周「Lianwei周报」&#xff0c;我们总结推荐了本周的政策/标准/指南最新动态、热点资讯和安全事件&#xff0c;保证大家不错过本周的每一个重点&#xff01; 政策/标准/指南最新动态 01 国家发改委等三部门印发《国家数据基础设施建设指引》 国家数据基础设施是从数据…...

ASP.NET Core 实现微服务 - Consul 配置中心

这一次我们继续介绍微服务相关组件配置中心的使用方法。本来打算介绍下携程开源的重型配置中心框架 apollo 但是体系实在是太过于庞大&#xff0c;还是让我爱不起来。因为前面我们已经介绍了使用Consul 做为服务注册发现的组件 &#xff0c;那么干脆继续使用 Consul 来作为配置…...

使用redis的5种常用场景

文章目录 1. 缓存热点数据2. 分布式锁3. 计数器和限流器4. 消息队列5. 会话管理总结 在日常开发工作中&#xff0c;Redis作为一款高性能的内存数据库&#xff0c;凭借其强大的功能特性和卓越的性能表现&#xff0c;已经成为了许多项目中不可或缺的组件。本文将详细介绍Redis在实…...

微信小程序防止重复点击事件

直接写在app.wpy里面&#xff0c;全局可以调用 // 防止重复点击事件preventActive(fn) {const self this;if (this.globalData.PageActive) {this.globalData.PageActive false;if (fn) fn();setTimeout(() > {self.globalData.PageActive true;}, 3000); //设置该时间内…...

PySpark用sort-merge join解决数据倾斜的完整案例

假设有两个大表 table1 和 table2 &#xff0c;并通过 sort-merge join 来解决可能的数据倾斜问题。 from pyspark.sql import SparkSession from pyspark.sql.functions import col# 初始化SparkSession spark SparkSession.builder.appName("SortMergeJoinExample&quo…...

sklearn-逻辑回归-制作评分卡

目录 数据集处理 分箱 分多少个箱子合适 分箱要达成什么样的效果 对一个特征进行分箱的步骤 分箱的实现 封装计算 WOE 值和 IV值函数 画IV曲线&#xff0c;判断最佳分箱数量 结论 pd.qcut 执行报错 功能函数封装 判断分箱个数 在银行借贷场景中&#xff0c;评分卡是…...

scrapy爬取图片

scrapy 爬取图片 环境准备 python3.10scrapy pillowpycharm 简要介绍scrapy Scrapy 是一个开源的 Python 爬虫框架&#xff0c;专为爬取网页数据和进行 Web 抓取而设计。它的主要特点包括&#xff1a; 高效的抓取性能&#xff1a;Scrapy 采用了异步机制&#xff0c;能够高效…...

在 Vue 项目中使用地区级联选

在 Vue 项目中使用地区级联选择的完整流程&#xff1a; 1.安装依赖包&#xff0c;这个包提供了中国省市区的完整数据。 npm install element-china-area-data --save 2.导入数据 import { regionData } from element-china-area-data 这个包提供了几种不同的数据格式&#…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

XCTF-web-easyupload

试了试php&#xff0c;php7&#xff0c;pht&#xff0c;phtml等&#xff0c;都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接&#xff0c;得到flag...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

Go语言多线程问题

打印零与奇偶数&#xff08;leetcode 1116&#xff09; 方法1&#xff1a;使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障

关键领域软件测试的"安全密码"&#xff1a;Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力&#xff0c;从金融交易到交通管控&#xff0c;这些关乎国计民生的关键领域…...

多模态大语言模型arxiv论文略读(110)

CoVLA: Comprehensive Vision-Language-Action Dataset for Autonomous Driving ➡️ 论文标题&#xff1a;CoVLA: Comprehensive Vision-Language-Action Dataset for Autonomous Driving ➡️ 论文作者&#xff1a;Hidehisa Arai, Keita Miwa, Kento Sasaki, Yu Yamaguchi, …...

旋量理论:刚体运动的几何描述与机器人应用

旋量理论为描述刚体在三维空间中的运动提供了强大而优雅的数学框架。与传统的欧拉角或方向余弦矩阵相比&#xff0c;旋量理论通过螺旋运动的概念统一了旋转和平移&#xff0c;在机器人学、计算机图形学和多体动力学领域具有显著优势。这种描述不仅几何直观&#xff0c;而且计算…...

Vuex:Vue.js 应用程序的状态管理模式

什么是Vuex&#xff1f; Vuex 是专门为 Vue.js 应用程序开发的状态管理模式 库。它采用集中式存储管理应用的所有组件的状态&#xff0c;并以相应的规则保证状态以一种可预测的方式发生变化。 在大型单页应用中&#xff0c;当多个组件共享状态时&#xff0c;简单的单向数据流…...