`

jconsole在windows和linux版本下的使用

 
阅读更多

在WINDWO7 平台下使用jconsole:

jconsole 监控window7,环境到机器:

C:\Users\用户\AppData\Local\Temp\hsperfdata_用户

生成对应进程的临时文件,供jconsole 使用

linux环境下:

确保能够远程ping 到该机器,

在启动脚本start.sh中加入以下内容,注意端口别冲突了:

 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8889 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -

 

在ubuntn 平台下使用jconsole:

 

从JDK5开始就已经增加了对VM的监控功能jconsole,JDK1.6也有了进一步的改进。

然而对linux特别是Ubuntu用户来说,会碰到一些小问题。

在终端进入java_home/bin目录下,

# jconsole

结果报错如下:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

 

原因就是在ubuntu下用java写Swing应用程序时不能使用SystemLookAndFeel。

实际上出现这个问题是因为swing的默认laf采用systemlaf,而Ubuntu里却没有定义这个laf。

一种很方便的解决方法就是把语言环境改成英文:

# export LANG=en

但对中文用户很不方便(尽管swing程序可以运行)。

另一种方法就是程序启动时加上jvm运行时参数,比如 运行jconsole :

# jconsole -J-Dswing.systemlaf=javax.swing.plaf.metal.MetalLookAndFeel

 

另外,jconsole对于hostname也有要求,如果执行:

# hostname -i

显时 127.0.0.1,则需要在 /etc/hosts中把127.0.0.1改成机器的外网IP。

这下,我们就又多了一个jvm分析的利器。

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics