可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本。使用方法 jmap -histo pid。如果连用SHELL jmap -histo pid>a.log可以将其保存到文本中去,在一段时间后,使用文本对比工具,可以对比出GC回收了哪些对象。jmap -dump:format=b,file=outfile 3024可以将3024进程的内存heap输出出来到outfile文件里,再配合MAT(内存分析工具(Memory Analysis Tool)或与jhat (Java Heap Analysis Tool)一起使用,能够以图像的形式直观的展示当前内存是否有问题。阅读全文>>
jrunscript是一个命令行脚本外壳。jrunscript支持交互模式(read-eval-print)和批处理模式(-f选项)的脚本执行。这是一个脚本语言的独立外壳。默认情况下,使用JavaScript,但是我们可以使用-l选项来指定不同的语言。通过Java与脚本语言的通讯,jrunscript支持"探索性编程"风格。阅读全文>>
Keytool 是一个Java数据证书的管理工具 ,Keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中在keystore里,包含两种数据:密钥实体(Key entity)-密钥(secret key)或者是私钥和配对公钥(采用非对称加密)可信任的证书实体(trusted certificate entries)-只包含公钥。阅读全文>>
用来查看基于HotSpot JVM里面所有进程的具体状态, 包括进程ID,进程启动的路径等等。与unix上的ps类似,用来显示本地有权限的java进程,可以查看本地运行着几个java程序,并显示他们的进程号。使用jps时,不需要传递进程号做为参数。Jps也可以显示远程系统上的JAVA进程,这需要远程服务上开启了jstat服务,以及RMI注及服务,不过常用都是对本对的JAVA进程的查看。阅读全文>>
Jinfo是JDK自带Java配置信息工具。位于java的bin目录下,jinfo的作用是实时地查看和调整虚拟机的各项参数,虽然使用Jps命令的-v参数可以查看虚拟机启动时显示指定的参数列表。但是如果想要知道没有被明确指出的系统默认值,就需要用到jinfo。Jinfo还能够修改一部分运行期间能够调整的虚拟机参数。阅读全文>>
我们如何反编译指定的Java字节码文件呢?在Sun公司提供的JDK中,就已经内置了Java字节码文件反编译工具javap.exe(位于JDK安装目录的bin文件夹下)。我们可以在dos窗口中使用javap来反汇编指定的Java字节码文件。阅读全文>>
Javadoc是Oracle公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。也就是说,只要在编写程序时以一套特定的标签作注释,在程序编写完成后,通过Javadoc就可以同时形成程序的开发文档。阅读全文>>
在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(properties)文 件就需要进行Unicode重新编码。原因是java默认的编码方式为Unicode,而计算机系统编码常常是GBK等编码。需要将系统的编码转换 为java正确识别的编码问题就解决了。阅读全文>>
APT(Annotation processing tool) 是一种处理注释的工具,它对源代码文件进行检测找出其中的Annotation,使用Annotation进行额外的处理。 阅读全文>>
applet可以使你在浏览器中运行Java程序。如果你浏览器没有安装Java插件,那可以依靠这个工具来浏览Applet。在HTML文件中嵌入applet,指定Class文件,就会在浏览器中运行指定的Java程序。阅读全文>>