linux使用jconsole

来源:互联网 发布:招聘网络技术员图片 编辑:程序博客网 时间:2024/06/05 03:47

从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分析的利器。

0 0