ubuntu-18.04 - VisualVM 无​​法启动

标签 ubuntu-18.04 visualvm jvisualvm

升级到 Ubuntu 18.10 后,VisualVM 1.3.9-1 无法启动。它是通过包管理器安装的,我真的不想手动安装。我尝试使用如下日志打开它:

visualvm -J-Djava.util.logging.config.file=logging-jconsole.properties

它给出了这个输出

java.lang.NoSuchMethodError: java.nio.ByteBuffer.position(I)Ljava/nio/ByteBuffer;
at org.netbeans.core.startup.layers.BinaryFS.<init>(Unknown Source)
at org.netbeans.core.startup.layers.BinaryCacheManager.load(Unknown Source)
at org.netbeans.core.startup.layers.LayerCacheManager$1Updater.run(Unknown Source)
at org.openide.filesystems.EventControl.runAtomicAction(Unknown Source)
at org.openide.filesystems.FileSystem.runAtomicAction(Unknown Source)
at org.openide.filesystems.FileUtil.runAtomicAction(Unknown Source)
at org.netbeans.core.startup.layers.LayerCacheManager.store(Unknown Source)
at org.netbeans.core.startup.layers.ModuleLayeredFileSystem.setURLs(Unknown Source)
at org.netbeans.core.startup.layers.ModuleLayeredFileSystem.addURLs(Unknown Source)
at org.netbeans.core.startup.NbInstaller.loadLayers(Unknown Source)
at org.netbeans.core.startup.NbInstaller.loadImpl(Unknown Source)
at org.netbeans.core.startup.NbInstaller.access$000(Unknown Source)
at org.netbeans.core.startup.NbInstaller$1.run(Unknown Source)
at org.openide.filesystems.FileUtil$2.run(Unknown Source)
at org.openide.filesystems.EventControl.runAtomicAction(Unknown Source)
at org.openide.filesystems.FileSystem.runAtomicAction(Unknown Source)
at org.openide.filesystems.FileUtil.runAtomicAction(Unknown Source)
at org.openide.filesystems.FileUtil.runAtomicAction(Unknown Source)
at org.netbeans.core.startup.NbInstaller.load(Unknown Source)
at org.netbeans.ModuleManager.enable(Unknown Source)
at org.netbeans.ModuleManager.enable(Unknown Source)
at org.netbeans.core.startup.ModuleList.installNew(Unknown Source)
at org.netbeans.core.startup.ModuleList.trigger(Unknown Source)
at org.netbeans.core.startup.ModuleSystem.restore(Unknown Source)
at org.netbeans.core.startup.Main.getModuleSystem(Unknown Source)
at org.netbeans.core.startup.Main.getModuleSystem(Unknown Source)
at org.netbeans.core.startup.Main.start(Unknown Source)
at org.netbeans.core.startup.TopThreadGroup.run(Unknown Source)
at java.lang.Thread.run(Thread.java:748)

系统安装的Javas如下

matthew@matthew-Kratos:~$ ls /usr/lib/jvm/
default-java               java-11-openjdk-amd64     java-8-openjdk-amd64
java-1.11.0-openjdk-amd64  java-1.8.0-openjdk-amd64  java-9-openjdk-amd64
matthew@matthew-Kratos:~$ dpkg-query -l | grep openjdk
ii  openjdk-11-jdk:amd64                       11.0.1+13-2ubuntu1                         amd64        OpenJDK Development Kit (JDK)
ii  openjdk-11-jdk-headless:amd64              11.0.1+13-2ubuntu1                         amd64        OpenJDK Development Kit (JDK) (headless)
ii  openjdk-11-jre:amd64                       11.0.1+13-2ubuntu1                         amd64        OpenJDK Java runtime, using Hotspot JIT
ii  openjdk-11-jre-headless:amd64              11.0.1+13-2ubuntu1                         amd64        OpenJDK Java runtime, using Hotspot JIT (headless)
ii  openjdk-8-jdk:amd64                        8u191-b12-0ubuntu0.18.10.1                 amd64        OpenJDK Development Kit (JDK)
ri  openjdk-8-jdk-headless:amd64               8u191-b12-0ubuntu0.18.10.1                 amd64        OpenJDK Development Kit (JDK) (headless)
ii  openjdk-8-jre:amd64                        8u191-b12-0ubuntu0.18.10.1                 amd64        OpenJDK Java runtime, using Hotspot JIT
ii  openjdk-8-jre-headless:amd64               8u191-b12-0ubuntu0.18.10.1                 amd64        OpenJDK Java runtime, using Hotspot JIT (headless)
rc  openjdk-9-jre-headless:amd64               9~b161-1                                   amd64        OpenJDK Java runtime, using Hotspot JIT (headless)

最佳答案

我在使用 Debian unstable 和 visualvm 1.3.9 以及 1.4.2 时遇到同样的错误。

对我有帮助的解决方法是使用以下方法(即与 Tomas Hurka 提供的答案相同):

visualvm --jdkhome /usr/lib/jvm/java-11-openjdk-amd64

当然,要实现此功能,您需要安装 openjdk-11-jdk。您的路径可能需要针对您的系统进行调整;这个想法是使用 Java 9 或更新的运行时运行。

(作为引用,我认为在我的案例中潜在的 Debian 错误是 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=897945 )

关于ubuntu-18.04 - VisualVM 无​​法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53685821/

相关文章:

ubuntu - Ubuntu 上的 panic : Missing emulator engine program for 'x86' CPU.

ubuntu - VS Code 未在 WSL -2 Ubuntu 18.04 服务器中打开 - 未找到命令 'code'

java - 为什么即使机器上运行了多个 java 应用程序也没有 JMX 冲突?

java - 无法使用 VisualVM 连接到 JMX/RMI 服务器,原因不明

java - 用于远程 JVM 的 JVisualVM CPU 分析

java - 是否有可用于 jvisualvm 或 NetBeans 分析器的调用 TreeView ?

docker - 易于获取错误 : Version '5:19.03.4~3-0~ubuntu-bionic' for 'docker-ce' was not found

python - (2002, "Can' t 通过套接字 '/var/run/mysqld/mysqld.sock' (2) 连接到本地 MySQL 服务器”)

java - 使用 visualvm 进行分析时如何避免出现类似 "Profiler Agent Warning: Failed to lookup cached class org/apache/derby..."的消息?

java - 如何对包装为 .exe 的 Java 应用程序运行分析?