JAVA基础知识--环境以及自带工具

本文介绍了Java环境变量的配置方法,包括JAVA_HOME、PATH和CLASSPATH等,并详细讲解了常用的Java工具,如jstack、jps、jstat、jmap、jinfo等的功能和应用场景。

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

环境

  • JAVA_HOME:配置JAVA的根目录,便于其他地方直接使用
  • PATH:增加JAVA_HOME/bin目录,使java/bin目录下的命令可以直接访问,不加也可以,但需要带目录访问
  • CLASSPATH: 这个配置1.5版本以后就没用了.可以不配置
配置方案
  • 大部分都会把JAVA_HOME和PATH都配置到公共的profile里,如果有冲突(一个服务器上有多版本jdk使用)的情况下,使用其他两种方案
  • 自建用户下的.bath_profile内设置
  • 启动脚本里设置
示例
export JAVA_HOME=/usr/share/jdk1.7.0_75 
export PATH=$JAVA_HOME/bin:$PATH 

自带工具

常用工具

  • jstack
    • jstack可以打印出Java堆栈信息,用于检查当前线程情况,比如死锁,线程执行慢等线程问题
  • jps
    • 列出所有的jvm实例
  • jstat
    • 可以监控类的加载及卸载情况以及内存和gc情况,主要用于内存和gc问题的排查分析
    • jstat -gc -h5 3653 1000
  • jmap
    • 输出当前某实例的对象情况,用于内存分析
    • jmap -histo pid |head -n 20 ##查看占用内存最多的对象
    • jmap -dump:format=b,file=dump.tmp 3653 导出dump文件详细分析
  • jinfo
    • 输出并修改运行时的java 进程的opts

其他工具

  • javah
    • 用于根据JAVA本地方法,生成对应的c语言头文件及相应的stub文件的命令
  • jconsole
    • GUI监视工具,可以以图表化的形式显示各种数据。并可通过远程连接监视远程的服务器VM,一般只用于本地使用
  • jvisualvm
    • jvisualvm同jconsole都是一个基于图形化界面的
  • jhat
    • Jhat用于对JAVA heap进行离线分析的工具,离线一般用MAT
    • mac版本mat
  • jdb
    • 用来对core文件和正在运行的Java进程进行实时地调试,基本用不上,一般都用ide来调试
  • javap
    • JDK自带的反汇编器,可以查看java编译器为我们生成的字节码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值