java jvmmonitor未在eclipse中列出任何JVM

92vpleto  于 2023-05-21  发布在  Java
关注(0)|答案(5)|浏览(167)

我试图使用jvmmonitor在eclipse中分析我的应用程序,但没有列出jvm,甚至没有运行的eclipse jvm,当我启动我的应用程序时,新的jvm没有出现。
Docs说:
JVM Explorer中至少应显示一个JVM(Eclipse本身)。如果没有显示JVM,则很可能Eclipse没有使用受支持的JDK启动。例如,可以使用JRE而不是JDK。要解决此问题,请通过Help > About Eclipse > Installation Details > Configuration检查系统属性java.home的值。您可能会看到,没有将受支持的JDK指定给java. home。关闭Eclipse。要在Eclipse上强制使用所需的JDK,请为eclipse可执行文件指定选项-vm,或者在eclipse.ini中指定它。要了解如何指定该选项,请参阅Workbench User Guide。启动Eclipse。
Eclipse配置中的java.home属性是/home/myname/programs/jdk/jre
我试图改变它,但没有什么会。my-vm已经设置为jdk目录,我的linux .profile和.bashrc导出到jdk目录的JAVA_HOME,但是eclipse中的java.home仍然是/home/myname/programs/jdk/jre
我还在java>monitor>tools preferences页面中将jdk根目录设置为/home/myname/programs/jdk/,但仍然没有成功。
我已经卸载了jvmmonitor并完全重新安装了它,但没有任何变化。
我正在用JDK 7和JVMMonitor3.8运行靛蓝
这是驾驶我坚果现在,任何想法将是最受欢迎的
先谢谢你了

liwlm1x9

liwlm1x91#

经过几个小时的摸索,我找到了解决办法。我现在使用的是VisualJVM,但它们的操作方式相同,即连接到本地套接字并设置JMX连接。
首先,jvmmonitor/visualjm和你的java应用程序必须在同一个用户下运行。
用户必须对linux /tmp/上的tmp目录具有写访问权限。
当启动任何java应用程序时,会在tmp的hsperfdata_myusername文件夹中创建一个包含java程序进程PID的本地文件,java分析软件使用该文件连接到运行java程序的jvm。
如果你从一个终端启动一个java程序,而终端的当前目录不是你的主目录,例如。从MYNAME:/home/myname/project/myjavaapp$启动,您可能会发现您可以连接到JVM,但无法对其进行采样或分析。将当前目录设置为主目录应该可以解决这个问题。

zvokhttg

zvokhttg2#

您必须更改Eclipse的.ini文件
只需添加:

-vm C:\JavaJDK\Java\jdk1.6.0_01\jre\bin\client\jvm.dll

下面是eclipse.ini文件的完整版本:

-startup
plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vm
C:\JavaJDK\Java\jdk1.6.0_01\jre\bin\client\jvm.dll
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
mqkwyuun

mqkwyuun3#

这个来自JVisualVM Troubleshooting Guide的解决方案也对我的jvmmonitor有帮助:

本地应用无法监控
**说明:**VisualVM启动后立即显示无法监控本地应用的错误对话框。本地运行的Java应用程序显示为(pid #)。
**解决方案:**如果用户名包含大写字母,则在Windows系统上可能会发生这种情况。在本例中,username是UserName,但JDK创建的jvmstat目录是%TMP%\hsperfdata_username。要解决此问题,请退出所有Java应用程序,删除%TMP%\hsperfdata_username目录并创建新的%TMP%\hsperfdata_UserName目录。

ygya80vv

ygya80vv4#

你检查了这个JVMMonitor的FAQ中的指令吗?
如果问题仍然存在,请以管理员身份运行Eclipse,至少在安装JVM Monitor插件后运行一次。
这为我解决了问题。

tzdcorbm

tzdcorbm5#

在尝试第一个解决方案(更改ini文件)后,它不起作用,我只是在首选项中输入jdk路径:

相关问题