Java jvmmonitor未在eclipse中列出任何JVM

Java jvmmonitor未在eclipse中列出任何JVM,java,eclipse,Java,Eclipse,我试图使用jvmmonitor在eclipse中评测我的应用程序,但是没有列出jvm,甚至没有运行的eclipse jvm,当我启动我的应用程序时,新的jvm不会出现 说> JVM资源管理器上至少应显示一个JVM(Eclipse本身)。如果没有显示JVM,那么Eclipse很可能不是用支持的JDK启动的。例如,可以使用JRE而不是JDK。 为了解决这个问题,, 使用帮助>关于Eclipse>安装详细信息>配置检查系统属性java.home的值。您可能会看到,支持的JDK没有指定给java.hom

我试图使用jvmmonitor在eclipse中评测我的应用程序,但是没有列出jvm,甚至没有运行的eclipse jvm,当我启动我的应用程序时,新的jvm不会出现

说>

JVM资源管理器上至少应显示一个JVM(Eclipse本身)。如果没有显示JVM,那么Eclipse很可能不是用支持的JDK启动的。例如,可以使用JRE而不是JDK。 为了解决这个问题,, 使用帮助>关于Eclipse>安装详细信息>配置检查系统属性java.home的值。您可能会看到,支持的JDK没有指定给java.home。 接近日食。 要在Eclipse上强制使用所需的JDK,请为Eclipse可执行文件指定选项-vm,或者在Eclipse.ini中指定它。请参阅《工作台用户指南》,了解如何指定该选项。 启动Eclipse

eclipse配置中的java.home属性是/home/myname/programs/jdk/jre

我试图改变它,但什么也改变不了。my-vm已经设置为jdk目录,而my linux.profile和.bashrc将导出到JAVA_HOME到jdk目录,但是eclipse中的JAVA.HOME仍然显示/HOME/myname/programs/jdk/jre

我还在java>monitor>tools-preferences页面中将jdk根目录设置为/home/myname/programs/jdk/,但仍然没有成功

我已经卸载了jvmmonitor并完全重新安装了它,但没有任何更改

我正在使用jdk 7和jvmmonitor 3.8运行EclipseIndigo

这让我快发疯了,任何想法都是受欢迎的


提前感谢

经过几个小时的努力,我终于找到了解决办法。我现在使用的是VisualJVM,但它们的操作方式与连接到本地套接字并设置JMX连接的方式相同

首先,jvmmonitor/visualjm和java应用程序必须在同一用户下运行

用户必须在linux/tmp/上具有对tmp目录的写入权限

启动任何java应用程序时,会在tmp中的hsperfdata_myusername文件夹中创建一个带有java程序进程PID的本地文件,java评测软件使用该文件连接到运行java程序的jvm


如果您从终端启动java程序,而终端的当前目录不是您的主目录,例如从MYNAME:/home/MYNAME/project/myjavaapp$启动,您可能会发现您可以连接到jvm,但无法对其进行采样或分析。将当前目录设置为主目录应该可以解决此问题

您必须更改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
来自的此解决方案也有助于我使用jvmmonitor:

无法监视本地应用程序

说明:一个错误对话框,指出无法启动本地应用程序 VisualVM启动后立即显示监控。本地运行 Java应用程序显示为(pid)

解析:如果用户名 包含大写字母。在这种情况下,用户名是
username
但是 JDK创建的jvmstat目录是
%TMP%\hsperfdata\u username
。到 解决此问题,退出所有Java应用程序,删除
%TMP%\hsperfdata\u用户名
目录并创建新的
%TMP%\hsperfdata\u用户名
目录


你查过这里面的指令了吗

如果问题仍然存在,请以管理员身份运行Eclipse,至少在安装JVM监视器插件后运行一次

这为我解决了问题