我在MAC OSX山狮上遇到了TomEE 1.5.1和VisualVM 1.7.0_09的一个非常奇怪的问题。
TomEE加载了一些webapp.Use VisualVM连接本地TomEE进程需要很长时间,连接后gc按钮被禁用,我不能进行堆转储。 VisualVM的日志显示一些错误。
com.sun.tools.attach.AttachNotSupportedException: Unable to open socket file: target process not responding or HotSpot VM not loaded
at sun.tools.attach.BsdVirtualMachine.<init>(BsdVirtualMachine.java:90)
at sun.tools.attach.BsdAttachProvider.attachVirtualMachine(BsdAttachProvider.java:63)
at com.sun.tools.attach.VirtualMachine.attach(VirtualMachine.java:213)
at com.sun.tools.visualvm.attach.AttachModelImpl.getVirtualMachine(AttachModelImpl.java:104)
Caused: java.io.IOException: Unable to open socket file: target process not responding or HotSpot VM not loaded
未在tmp文件夹中创建.java_pid<pid>
文件。
但是如果我在启动它之前和加载任何webapps之前使用VisualVM连接TomEE,将创建.java_pid<pid>
文件,VisualVM将立即连接到它,并且堆转储工作。
另一个解决方法是修改catalina.sh,将tools.jar添加到ClassPath并删除openejb javaagent,然后在TomEE完全启动后连接正常工作。
无法在ubuntu机器上重现。
答案 0 :(得分:0)
可能jvm内存不足。我已多次见过它了。 尝试:
还要确保您的系统内存不足。