博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 自带的工具
阅读量:7089 次
发布时间:2019-06-28

本文共 1622 字,大约阅读时间需要 5 分钟。

前辈说,java的基本功的好坏,一个方面要看是否能熟练使用jdk bin下的工具使用情况。

自己整理一下使用的工具。

■ javac

一个编译java的工具,进入java所在文件的路径后,javac XXX.java

■ java

java XXX 执行生成的字节码文件。

 ■ jar 

打jar包用的,现在一般都用eclipse等这种工具,直接打jar包

 ■ javadoc

生成java的doc文档。现在一般都用eclipse等这种工具,直接可以生成,不用单独去敲这个命令。

 ■ jps

它是java process 的缩写,就是查看当前java的启动的进程。注意,显示的是java启动的进程,并非操作系统的进程。

使用方法,在控制台中直接 jps 就行。

p.s.我在实际操作中遇到个问题,这边运行着java程序,另一边敲下了jps,但是却什么也没有。这是为什么呢?后来我查了资料找到了原因。在 Win32 系统上,每个 java 进程启动之后都在 %TMP%\hsperfdata_user ( user 为当前登录用户名)目录下建立一个以该 java 进程 pid 为文件名的文件,用以记录该 java 进程的一些信息。而 jconsole 和 jps 正是利用这些文件来获取当前系统中 java 进程的信息的。如果该目录位于 FAT 文件系统下,或者位于 NTFS 文件系统下,但当前用户对%TMP%\hsperfdata_user目录的访问权限不足,无法创建和写入该文件,jconsole 和 jps 就抓瞎了。

解决办法:

 在启动java程序的时候添加一个参数即可:

    -XX:+PerfBypassFileSystemCheck

 ■ jconsole

它是java内置的性能分析器。你可以轻松的使用它,来监控java程序性能和跟踪java中的代码。

在使用Eclipse的时候,为了使用jconsole,需要配置一些参数,程序的启动参数如下:

-Djava.rmi.server.hostname=XXX.XXX.XXX.XXX      ip地址
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=8011      端口号,随便
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false

之后,启动程序。接下来,cmd命令行中,调用jconsole,接下来,输入ip地址:端口号,点击连接就可以了。

在这里,推荐一篇博客,里面对jconsole有更详细的介绍,讲解的比我好,我就不在这里多说了。

http://jiajun.iteye.com/blog/810150

 

JVisualVM

它是集成了多个jdk命令的免费可视化工具,它可以被单独下载,但是jdk的bin下,已经安装好了。可以直接使用。

它里面有丰富的插件,要想使用JConsole等一些功能,需要下载插件。各版本最新的下载中心:

设置下载中心的方法:Tools -> Plugins -> Settings添加最新的插件中心。

 推荐一个博客:http://jiajun.iteye.com/blog/1180230

 

JMAP

生成java 对内存统计数据的工具。假设,我们在lunix下,无法使用图形界面分析,这时使用jmap将堆内存等统计数据导入后,再有其他可视化工具进行分析。

-dump:[live,]format=b,file=<filename>

e.g. jmap -dump:format=b,file=output.bin

 

 

 

 其它的工具,未完待续。。。

 

转载于:https://www.cnblogs.com/lihao007/p/7191346.html

你可能感兴趣的文章
面试题38-数字在排序数组中出现的次数
查看>>
再次总结移动端事【件穿穿透】问题
查看>>
vue示例之transition-另外发现一个vue(可能的)小bug
查看>>
linux高级编程day07 笔记
查看>>
基于IPv6的数据包分析(第三组)
查看>>
JavaScript获取网页属性包括宽、高等
查看>>
Angular 4.0 架构详解
查看>>
JAVA递归遍历指定目录下的所有文件(包括子目录下的文件)
查看>>
range()和xrange()的区别
查看>>
快速搭建fabric-v1.1.0的chaincode开发环境
查看>>
Python学习的相关文件链接
查看>>
JSON 入门
查看>>
constructor中能不能有返回值?
查看>>
03动物类
查看>>
池化层pooling
查看>>
GPS坐标转百度地图并且加载地图示例.支持微信端访问
查看>>
浏览器自动跳转
查看>>
数据可视化-EChart2.0使用总结2
查看>>
继承的设计技巧
查看>>
github隐藏文件&删除文件
查看>>