jProfiler找不到JVM

时间:2012-02-06 12:50:16

标签: java jvm jprofiler

我已经在我的生产服务器上启动了jprofiler,经过一些分析我已经杀了它(kill -9)。

现在我正在尝试再次启动它,并且只收到“未找到未经过发现的JVM”。信息, 但jps命令说我的应用程序正在运行(我可以看到它实际上是自己工作的)。

可能jprofiler会在某个文件中存储有关它当前配置的jvms的信息 kill命令阻止它更新此文件。那么如何手动清洁呢?

P.S。我试图删除然后再解压缩jprofile,仍然无法正常工作。

3 个答案:

答案 0 :(得分:9)

JProfiler通过作为JDK一部分的“Attach API”找到JVM。查看由热点JVM创建的$TMP/hsperfdata_$USER目录。它应该包含所有正在运行的JVM的PID文件。如果没有,请删除该目录并重新启动所有JVM。

答案 1 :(得分:1)

look at this QA,除非你杀掉jp,否则无法在java进程上卸载Jprofiler代理。

我不确定你是否真的可以杀死这个特工。

"未找到未经过发现的JVM。"启动Jprofiler两次时将出现消息。 尝试重新启动受监控的Java应用程序。

答案 2 :(得分:0)

在WLS服务器上,这通常意味着您重新启动了服务器,并且有两个JVM正在运行。 我运行此命令来启动jpenable: ./ jpenable --gui --port = 8888 --pid = $ WLS_ID 并得到这个错误: 未取消配置PID 14690的JVM。

杀死其中一个: 杀死-9 14690

使用以下输出重新运行上面的jpenable启动命令: 连接到weblogic.Server [18037] ... 现在,您可以使用JProfiler GUI在端口8888上进行连接

18037 是无法与JProfiler客户端连接的JVM的PID。