Linux系统安装Java

本文详细介绍了如何在Linux环境下下载、安装JDK,并配置环境变量,包括使用Xshell远程连接虚拟机、解压JDK包、配置JAVA_HOME等关键路径,以及如何验证JDK安装是否成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、下载JDK

下载网址:https://www.oracle.com/technetwork/java/javase/downloads/index.html

下拉,找到jdk8

使用Xshell远程连接虚拟机:

2、 先新建一个文件夹,目录是/usr/local/java

mkdir /usr/local/java

点击xftp:

将widows系统中的下载的jdk,传人到Linux系统中/usr/local/java目录下。

3、命令行进入/usr/local/java文件夹

cd /usr/local/java

 解压:tar zxvf 压缩包名称 (例如: tar zxvf jdk-8.0251-linux-x64.tar.gz )后面的名称可以只输入一个 tar zxvf j ,然后使用 Tab 按键自动补全文件名
 删除压缩包:rm -f 压缩包名称 (例如  rm -f jdk-8.0251-linux-x64.tar.gz )

4、环境变量配置

1. 编辑 /etc/profile 文件

vi /etc/profile

2. 按 Insert 或者 I  键,切换成编辑模式。
找到内容末尾,按图片输入下面一段话。
在 unset i 的前面输入

export JAVA_HOME=/usr/local/java/jdk1.8.0_251
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

(!!!注意:JAVA_HOME的路径是你实际解压后的JDK的路径,千万别写错了)

3. 按 Esc 退出编辑模式,输入 :wq 保存并退出

5、 生效环境变量


对于/etc/profile编写完成之后是不够的,还需要最后一个步骤,就是让刚刚我们修改的文件变成有效起来,所以我们再输入一个命令,让修改生效。
生效命令:

source /etc/profile

6、验证是否成

java -version

7、编写一个java程序:

在/root/haha目录下输入:vim TestFor.java

public class TestFor{
    public static void main(String[] args){
        int random =0;
        while (random<100){
          random=random *10;
        }
    }
}

注意:主类TestFor需要与类名相同

编译:javac TestFor.java

运行:java TestFor

由于程序中编写的是死循环,故非常消耗cpu,运行之后,top查看cpu使用率100%,

Linux系统cpu 100%排查:

  • 查消耗cpu最高的进程PID

  • 根据PID查出消耗cpu最高的线程号

  • 根据线程号查出对应的java线程,进行处理。

可以看到:cpu使用率最高的进程PID为:102386

top -Hp 102386    显示一个进程的线程运行信息列表。按下P,进程按照cpu使用率排序

可以看到PID 为102387的线程耗用cpu最高。

这是十进制的数据,需要转化为十六进制:printf "%x\n" 102387

为:18ff3

之所以要转化为16进制,是因为堆栈里,线程id是用16进制表示的。

根据线程号查出对应的java线程,进行处理

执行命令,导出进程快照

查看堆栈,找到线程在干嘛

工具:pstack/jstack/grep

方法:jstack 102386 | grep ‘18ff3’ -C5 --color

· 打印进程堆栈

· 通过线程id,过滤得到线程堆栈

可以看到,问题出在TestFor.java文件中个第5行。

代码为死循环;

定位结束。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值