使用VisualVM检查已使用-javaagent启动的java应用程序
我正在尝试使用VisualVM检查java应用程序。通常没有问题,但我正在尝试设置Eclipselink编织,因此我使用-javaagent标志启动程序使用VisualVM检查已使用-javaagent启动的java应用程序,java,visualvm,javaagents,Java,Visualvm,Javaagents,我正在尝试使用VisualVM检查java应用程序。通常没有问题,但我正在尝试设置Eclipselink编织,因此我使用-javaagent标志启动程序 -Xms1024m -Xmx1582m -Xshare:off -javaagent:C:\Users\Administrator\.m2\repository\org\eclipse\persistence\eclipselink\2.3.0-M7\eclipselink-2.3.0-M7.jar 当我使用Viusal VM查看程序时,在
-Xms1024m -Xmx1582m -Xshare:off -javaagent:C:\Users\Administrator\.m2\repository\org\eclipse\persistence\eclipselink\2.3.0-M7\eclipselink-2.3.0-M7.jar
当我使用Viusal VM查看程序时,在监视器页面上看不到任何内容
不幸的是,VisualVM文档站点(位于VisualVM.java.net)似乎已关闭
感谢所有能帮助我理解我做错了什么的人。感谢甲骨文公司的托马斯·赫卡,我能回答这个问题 该问题是由检测到jvm和JVStat初始化jvm之间的超时引起的(http://java.sun.com/performance/jvmstat/). 随着织布机的开启,该间隔明显增加 有两种方法可以解决这个问题 1) 您可以在预定义端口上的受监控应用程序中使用
-Dcom.sun.management.jmxremote.port=<portNum>
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
再次感谢托马斯。多亏了甲骨文公司的托马斯·赫卡,我可以回答这个问题 该问题是由检测到jvm和JVStat初始化jvm之间的超时引起的(http://java.sun.com/performance/jvmstat/). 随着织布机的开启,该间隔明显增加 有两种方法可以解决这个问题 1) 您可以在预定义端口上的受监控应用程序中使用
-Dcom.sun.management.jmxremote.port=<portNum>
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
再次感谢托马斯。他应该从这个中得到一些要点,也许eclipse链接代码插装与VisualVM配合得很好??您确定这是connect to-javaagent标志吗?其他java应用程序的监控工作正常吗?Tomas,是的,在我使用-javaagent启动应用程序之前,它工作正常。正如Peter所说,我怀疑这是因为eclipselink正在“编织”——这是在改变类的字节码——而这不适用于visualvm。也许EclipseLinks代码插装确实适用于visualvm??您确定这是连接到-javaagent标志吗?其他java应用程序的监控工作正常吗?Tomas,是的,在我使用-javaagent启动应用程序之前,它工作正常。正如Peter所说,我怀疑这是因为eclipselink正在“编织”——即改变类的字节码——而这不适用于visualvm。