Linux:安装jdk

news2024/9/20 22:44:39

一、tar压缩包形式安装jdk:

         1、安装到/opt目录下,如下图所示,先将tar.gz压缩包移动到/opt目录下,然后解压出来,命令依次是:

         tar -zxvf jdk-8u151-linux-x64.tar.gz

         2、解压缩完毕后,我们使用ls命令可以看到目录底下又生成了一个新的jdk.18.0_151目录,切换到该目录下查看,可以看到执行文件目录bin、包文件lib都在里面。我们再查看bin目录,里面java的各种命令都在,因此下一步我们只需要把这个bin目录添加到环境变量里去,就能够直接运行下面的命令了。

         3、配置环境变量,刚才我们把tar.gz压缩包移动到/opt目录下后,再解压,因此可执行文件的路径就是/opt/jdk1.8.0_161/bin,我们把这个路径添加到环境变量文件.bash_profile里面去。使用编辑器打开这个文件。

(1)命令是:vim ~/.bash_profile

(2)添加以下内容:

export JAVA_HOME=/home/fovace/jdk/jdk1.8.0_151

export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/

export PATH=$PATH:$JAVA_HOME/bin

(3)保存文件内容,命令是: :wq

(4)使用source命令更新这个文件,命令是:source ~/.bash_profile

       4、路径更新完毕后,我们输出一下环境变量

(1)命令是:echo $PATH

(2)可以看到,jdk的路径确实已经在环境变量PATH里了,然后我们再执行java命令,看能否正确执行,如果能正确输出版本信息,说明安装正常

二、查看是否安装JDK

       看看是否设置了jdk环境变量: echo $JAVA_HOME;

       或运行命令:java -version看看能否查看版本,能就是运行;

       或者查看后台进程:ps -ef|grep java。

三、延申

       通过java -version可以看到Linux中的java并非是我们安装的1.8.0_151版本,而是1.8.0_181版本

       这是因为Linux中自带了一个java,该自带Java的版本就是181,这一点可以通过which命令来确认

       如果我们希望将Linux系统在每次使用java时,都自动默认为我们自己安装的151版本,有两种方法:

  1. 将自己安装的java的路径放到系统自带Java的路径前
  2. 将系统自带的java删掉,改成我们自己的java:

rm -f /bin/java

ln -s /home/fovace/jdk/jdk1.8.0_151/bin/java /bin/java

然后查看java版本:

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ArrayList继承了AbstractList,已经间接实现了List接口,那么为什么ArrayList还要显式实现List接口呢

这是因为,通过显式实现接口,ArrayList可以确保: 它实际上已经完整实现了List接口所规定的所有方法。 更明确地告诉其他程序员:这个类的目的是完整实现List接口。 如果ArrayList仅仅继承AbstractList,而未显式实现List接口,那么其他程序员在阅读代码时,无法立即确定这个类是否完…

STM32单片机(三)第二节:GPIO输出练习3(蜂鸣器)

❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要…

VTK 三维移动旋转工具 ,移动工具 旋转工具 三维旋转工具

前言:本文为该系列的第一篇建立3D交互窗口,​ 基于VTK&QT,建立3D交互窗口; 基本信息 开发平台:VS&QT 版 本:VS2017 & QT5.15.2 & VTK9.0.3 功能: 选中控件 移动 旋转 …

卷积神经网络的三大特性

卷积神经网络(CNN)的三大特性是: Sparse Interaction(稀疏交互):稀疏交互是指在卷积神经网络中,每个神经元仅与输入数据的局部区域进行交互。这意味着神经元只对输入数据的一小部分感知&#xf…

Qt自定义控件(数字框与拖拽条互动)

一、效果 自定义红色区域组件,做到数字与拖拽条相互影响。 二、实现 输入合适的名字 打开自定义组件ui 选择合适的组件进行布局 将两个空间的信号和值进行绑定 新增自定义函数并实现 #include "smallwidget.h" #include "ui_smallwidget.h"sma…

从架构角度看网络安全:数字化时代企业如何构建防御体系?

导语 | 数字化时代,网络安全已经成为企业发展的重中之重,通过体系化的安全建设,企业可以从容应对愈加复杂的网络安全挑战。今天,我们特邀了腾讯云 TVP、赛博英杰科技董事长 谭晓生老师,他将从资深技术专家视角解读如何…

vscode vue-helper插件导致vscode 自动换行快捷键失效

vue-helper插件:代码提示,点击文件路径快速跳转。 vue-helper导致vscode功能异常:自动换行的快捷键(alt Z)失效了。 因为我平时看代码的时候喜欢 换行和不换行之间来回切换,所以这个alt Z 我是经常用的。…

URL缩短服务:复杂问题的简洁解决方案

项目简介:TinyURL是一项在线服务,允许用户将长网址缩短为简洁的短网址,以便于分享和使用。这种服务尤其适用于社交媒体和电子邮件,因为这些平台对链接长度可能有限制。TinyURL的使用非常简单,只需在它的网站上输入长网…

【 Android11 WiFi开发 一 】WiFi列表获取与展示

前言 最近在Android11上开发了WiFi相关功能,涉及到WiFi列表的获取、连接有密码的WiFi、连接已保存的WiFi、忘记连接的WiFi、添加其他WiFi。涉及到的知识点较多作以分篇记录,本篇将介绍WiFi列表的获取与展示。 说明 下面梳理下WiFi列表获取流程&#xff1…

白嫖的text2video模型ZeroScope_v2

ZeroScope是一种基于ModelScope的视频生成模型,可以通过文本生成16:9的高质量视频。 Zeroscape 是一种基于 Transformer 架构的语言生成模型,其中包括了多种不同的变体和版本。其中,zeroscape_v2 是一种较新的模型,相较于之前的版…

浅谈电气火灾监控系统在高层建筑的应用

摘要:通过介绍上海某高层建筑电气火灾监控系统设计情况,对电气火灾监控系统工作特点和具体设计内容进行说明,同时提出一些设 计过程中需注意的事项,供业内人士借鉴,以期增进对电气火灾监控系统设计的重视,…

【vim】Linux种的vim

:q quit (close window) :w save (“write”) :wq save and quit :e {name of file} open file for editing :ls show open buffers :help {topic} open help :help :w opens help for the :w command:help w opens help for the w movement <ESC>进入vim模式 &l…

Python如何调用C库(Windows Linux)

软硬件环境 ubuntu 18.04 64bitwindows 10 64bitPython 3.8GCC 4.9visual studio 前言 在做 python 开发中&#xff0c;经常会碰到&#xff0c;需要通过调用 C 的一个动态链接库来获取相应的值。本文详细讲解了 Windows 和 Linux 2个平台上的不同实现。 linux版的动态库 写个简…

搬运/移植Anaconda配置的项目注意事项

从旧电脑上将项目搬运至新电脑时&#xff0c;搬运项目的时候&#xff0c;将原项目的环境也拷贝过去了&#xff0c;发现出现了问题&#xff0c;使用pip进行安装库的时候&#xff0c;怎么都用不了。错误内容为&#xff1a; Fatal error in launcher: Unable to create process us…

【算法与数据结构】541、LeetCode反转字符串 II

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;本题自己写了一个swap函数&#xff0c;用来反转字符串&#xff0c;也可以用库函数reverse。然后是用in…

一文学会使用键盘控制moveit2机械臂模型

文章目录 前言一、官方样例实现软件版本bug修复运行测试 二、gp110机械臂控制文件添加文件修改编译工程运行测试 总结 前言 在之前文章的基础上相信大家已经学会了如何搭建一个机械臂模型&#xff0c;那么我们如何对其进行控制呢&#xff0c;上网检索了一下没找到能清晰指导实…

3.2 Java标识符

3.2 Java标识符 关键字&#xff0c;Java中一些预先设定好的单词被称为关键字常用关键字如下图所示 图中的关键字都是Java预先设定好的&#xff0c;在平时应用中不能用这些关键词作为名字来使用。因为Java已经赋予这些关键字一些意义不能直接使用&#xff0c;这些关键词是Java中…

真实遇到Redis双写一致性问题

今天工作中接到一个bug&#xff0c;产品那边描述&#xff0c; 在后台添加一个供应商后前台无法展示。 是个例还是全部&#xff1f;他说应该是个例。 开始分析。。。。。。。 首先数据库查询可以查出新添加的这个供应商的&#xff0c;说明添加成功的&#xff0c;唯一的问题肯定…

Baltamatica 北太天元 —— 基于模拟退火算法的旅行商问题

文章目录 北太天元&#xff08;Baltamatica&#xff09;简介Baltamatica 复现基于Matlab的旅行商问题问题描述模拟退火算法Metropolis准则算法流程图&#xff1a; Demo1&#xff1a;只考虑累计距离&#xff0c;通过模拟退火算法求解最短路径matlab代码&#xff1a;Baltam代码&a…

Go 语言基础语法:Hello World 实例(涉及定义变量;fmt 包、Print、Println、Printf)

Hello world实例 package mainimport "fmt"func main() {fmt.Println("Hello, World!") } 编译 运行 go run hello.go Hello, World! go run 做了编译和执行两动作&#xff0c;编译会生成 hello 文件&#xff0c;执行完成后此文件会被删除。 web展示 …