标签: jvisualvm

类共享警告不允许我使用visualVM在本地(Windows)进行配置

当我从Eclipse Helios启动我的Java应用程序时,我在visualVM上的本地应用程序列表中看到它.但是,我转到Profiler选项卡,我无法通过CPU或内存条件进行配置.

我收到以下消息:"警告!为此JVM启用了类共享.这可能会在分析应用程序时导致问题并最终导致崩溃.请参阅VisualVM故障排除指南以获取更多信息和解决问题的步骤:https:/ /visualvm.dev.java.net/troubleshooting.html#xshare."

在我的应用程序的eclipse启动器中,我将-Xshare:off添加到VM_Arguments但没有成功.使用的JDK:jdk 1.6.0_20 Enviornment:Windows 7,64bit

有什么建议吗?谢谢

eclipse windows visualvm jdk1.6 jvisualvm

5
推荐指数
1
解决办法
1084
查看次数

maven/visualvm:我如何使用visualvm来描述正在运行的万无一失的过程?

我可以附加到万无一失的过程中,但是试图对其进行分析以示抽样:

CPU sampling:
Not available. Failed to create JMX connection to target application. Use 'Add JMX Connection' action to attach to the application.

Memory sampling:
Not available. Failed to read objects in target application. Check the logfile for details (use Help | About | Logfile).
Run Code Online (Sandbox Code Playgroud)

并尝试开始分析显示一个空的错误消息框

java visualvm jvisualvm maven

5
推荐指数
1
解决办法
5754
查看次数

老一代物件的统计数据?

是否有任何工具可以查看JVM堆的不同代的对象统计信息?我正在研究潜在的内存泄漏,需要不同代的一些数据.我的用例是在旧代中拍摄对象的快照,等待,然后拍摄另一个快照进行比较.

JVisualVM提供了有关已创建对象的统计信息,但这对我没有多大帮助,因为我没有看到特定对象是否正在被提升或终身比它应该更快.

Jmap提供不同代的统计信息,但不提供基于对象的统计信息.在那个工具中,我只能看到老一代正在成长......

java garbage-collection jvm jvisualvm jmap

5
推荐指数
1
解决办法
970
查看次数

unvis中的jvisualvm

我们开始检查我的应用程序的性能,因为它在一段时间后变慢.我正在使用jvisualvm来观察原因.任何人都可以告诉我如何在Unix中使用jvisualvm,就像在Windows中我们可以通过UI检查它.我们也可以在Unix中拥有相同的视图.

让我的jvisualvm路径是/ Prj/tools/java/bin/jvisualvm

当我使用帮助时,

Usage: /Prj/tools/java/bin/../lib/visualvm//platform7/lib/nbexec {options} arguments  

General options:  
  --help                show this help  
  --jdkhome <path>      path to Java(TM) 2 SDK, Standard Edition  
  -J<jvm_option>        pass <jvm_option> to JVM  

  --cp:p <classpath>    prepend <classpath> to classpath  
  --cp:a <classpath>    append <classpath> to classpath  
Core options:  
  --laf <LaF classname> use given LookAndFeel class instead of the default  
  --fontsize <size>     set the base font size of the user interface, in points  
  --locale <language[:country[:variant]]> use specified locale  
  --userdir <path>      use specified directory to store user settings …
Run Code Online (Sandbox Code Playgroud)

java unix jvm jvisualvm

5
推荐指数
1
解决办法
9532
查看次数

在分析本地进程时jvisualvm挂起

当我使用时jVisualVM,我看到两个本地进程:VisualVM本身和我感兴趣的进程让我们调用它ProcessX.当我双击这个VisualVM过程时,一切正常.当我双击时ProcessX,应用程序卡住了,不再对应了.我用eclipse运行我的Java应用程序,和我有一个单机版jVisualVM上的Windows x64盒子.我从"C:\ Program Files\Java\jdk1.7.0_51\bin"运行jVisualVM.VisualVM菜单中将代理设置为"无代理"对我也没有帮助

java visualvm jvisualvm

5
推荐指数
1
解决办法
2627
查看次数

jvisualvm:卡在“正在加载堆转储...”屏幕上

我使用的是 jdk64,我的 java 版本是“1.6.0_24”。我的 tomcat 使用 -Xmx7196m 运行,而 jvisualvm 使用 -J-Xms2048m -J-Xmx3072m 运行。我对我的 tomcat java 进程进行了堆转储,我的.hprof文件大小约为 5.5 GB。当我尝试打开这个堆转储时,它只是停留在Loading Heap Dump...屏幕上。

我还查看了 VisualVM 在尝试打开堆转储时的堆消耗情况,但只有 500MB 左右。

注意:我确实看过jvisualvm: Stuck on “Loading Heap Dump” screen question 但它是不同的并且没有解决我的问题。

java profiling visualvm hprof jvisualvm

5
推荐指数
2
解决办法
6456
查看次数

如何附加VisualVM并在应用程序启动时立即开始分析?

我可以将VisualVM附加到正在运行的应用程序,然后开始分析。

在我执行手动操作的所有时间中,目标应用程序正在运行,统计信息正在丢失。

如何在应用程序启动的同时完全开始收集统计信息?

更新

Profile Startup什么方法设置要运行的类?

在此处输入图片说明

用于应用程序设置的非常小的单元格说

-agentpath:D:/Apps/visualvm_138/profiler/lib/deployed/jdk16/windows-amd64/profilerinterface.dll=D:\Apps\visualvm_138\profiler\lib,5140
Run Code Online (Sandbox Code Playgroud)

即不包含有关应用程序位置的线索。

java visualvm jvisualvm

5
推荐指数
1
解决办法
1688
查看次数

在jconsole中没有设置hibernate环境

hibernate-jconsole-1.0.7.jar用来监控hibernate.但是每当我运行jar Jconsole时,都会以exception.这是Jconsole输出,

javax.management.InstanceNotFoundException: Hibernate:application=Statistics is not registered.
    at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:523)
    at org.jboss.mx.server.MBeanServerImpl.getAttributes(MBeanServerImpl.java:562)
    at javax.management.remote.rmi.RMIConnectionImpl.doOperation(Unknown Source)
    at javax.management.remote.rmi.RMIConnectionImpl.access$300(Unknown Source)
    at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(Unknown Source)
    at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(Unknown Source)
    at javax.management.remote.rmi.RMIConnectionImpl.getAttributes(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor279.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source)
    at sun.rmi.transport.Transport$2.run(Unknown Source)
    at sun.rmi.transport.Transport$2.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Unknown Source)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.access$400(Unknown Source)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(Unknown Source)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source) …
Run Code Online (Sandbox Code Playgroud)

java jboss hibernate jconsole jvisualvm

5
推荐指数
0
解决办法
553
查看次数

使用VisualVM对Tomcat应用程序进行性能分析

我试图在用户名tomcat6下运行visualvm,因为显然visualvm只能找到以其用户名运行的应用程序。因此,默认情况下,它仅查找以我的用户名运行的应用程序。我已经能够通过jmx将visualvm与tomcat6连接起来,但是缺少检测配置文件的精细粒度。

我尝试以下操作在用户名tomcat6下运行visualvm,但遇到了以下我不理解的错误。

$ sudo -u tomcat6 jvisualvm
No protocol specified
Exception in thread "main" java.awt.AWTError: Can't connect to X11 window server using ':0' as the value of the DISPLAY variable.
    at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
    at sun.awt.X11GraphicsEnvironment.access$200(X11GraphicsEnvironment.java:65)
    at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:115)
...
Run Code Online (Sandbox Code Playgroud)

java tomcat profiling jvisualvm

5
推荐指数
2
解决办法
7107
查看次数

即使有巨大的可用内存,Java GC 也会运行太频繁

我检查了 Java 应用程序的当前内存行为,我注意到垃圾收集器最初很少运行,但在很长一段时间内它会继续更频繁地运行,即使我没有设置最大内存使用量限制(服务器有 8Gb 的空闲内存)。

最初 GC 每 20 分钟运行一次,15 小时后每分钟运行一次,但应用程序做同样的事情并且 RAM 使用量没有峰值。

继续运行GC,消耗越来越多的CPU,24小时后,CPU使用率为85%,GC每10秒运行一次。

以下是演出截图:

Jprofiler 运行 14 小时

Jprofiler 运行 14 小时

JvisualVM 运行了最后一个小时

JvisualVM 运行了最后一个小时

JvisualVM - 高 CPU 使用率

JvisualVM - 高 CPU 使用率

为什么即使内存非常低,GC 也会启动?它不应该在这些情况下开始。

可能是什么原因或我应该怎么做来调查这种行为?

java garbage-collection memory-leaks jprofiler jvisualvm

5
推荐指数
0
解决办法
966
查看次数