jstack是否停止使用较新的JDK8版本? [英] Did the jstack stopped working on newer JDK8 versions?

查看:200
本文介绍了jstack是否停止使用较新的JDK8版本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我很惊讶地发现,不知怎的,最近,jstack停止了在更新的JDK 8上工作。我不知道发生了哪个版本,但我得到了:

I am surprised to discover that somehow, recently, jstack stopped working on newer JDK 8. I am not sure around which release this happened but I do get:

36649: Unable to open socket file: target process not responding or HotSpot VM not loaded
The -F option can be used when the target process is not responding

ps -Af|grep 36649
conflue+ 36649     1 62 08:14 ?        00:48:28 /usr/lib/jvm/java-8-oracle/bin/java -Djava.util.logging.config.file=/opt/atlassian/confluence/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Xms15000m -Xmx15000m -Duser.timezone=UTC -Djava.awt.headless=true -Dconfluence.upgrade.recovery.file.enabled=false -Dmail.smtp.connectiontimeout=10000 -Dmail.smtp.timeout=10000 -XX:MaxMetaspaceSize=256m -XX:+UseG1GC -Djava.awt.headless=true -Xloggc:/opt/atlassian/confluence/logs/gc-2015-07-02_08-14-39.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=2M -XX:-PrintGCDetails -XX:+PrintGCTimeStamps -XX:-PrintTenuringDistribution -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8091 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=127.0.0.1 -Djava.endorsed.dirs=/opt/atlassian/confluence/endorsed -classpath /opt/atlassian/confluence/bin/bootstrap.jar:/opt/atlassian/confluence/bin/tomcat-juli.jar -Dcatalina.base=/opt/atlassian/confluence -Dcatalina.home=/opt/atlassian/confluence -Djava.io.tmpdir=/opt/atlassian/confluence/temp org.apache.catalina.startup.Bootstrap start

我确定PID是的,我甚至尝试了 -F 模式,这似乎阻止了jstack,我等了很多分钟,似乎根本没有回应。

I am sure that the PID is right and I even tried the -F mode, which seems to block the jstack, I waited many minutes and it seems not to respond at all.

如果有人能提供另一种方法来产生调查死锁所需的那些线程转储等等,我将非常愿意尝试它们。

If anyone can provide an alternative way to produce those thread-dump needed for investigating dead-locks and so, I will be more than willing to try them.

其他系统信息

Ubuntu 14.04.2 LTS
>java -version
Java build 1.8.0_45-b14
>uname -r
3.13.0-55-generic


推荐答案

确保使用java8中的jstack。你运行java-8-oracle,但有可能,默认的jvm是不同的:)另外,尝试sudo,以排除访问问题。

Make sure that you use jstack from java8. You run java-8-oracle, but it is possible, that default jvm is different :) Also, try sudo, to exclude access problems.

这篇关于jstack是否停止使用较新的JDK8版本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆