java - 运行 java 分析器

标签 java

我正在尝试运行一个基于java的java分析器来找出我的专用机器上的java应用程序的资源消耗情况。我尝试使用的分析器称为 Warmroast。

运行时出现以下错误。

java -jar warmroast.jar

Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/attach/AttachNotSupportedException
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
        at java.lang.Class.getMethod0(Unknown Source)
        at java.lang.Class.getMethod(Unknown Source)
        at sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.sun.tools.attach.AttachNotSupportedException
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 6 more

我认为这个错误是由于使用jre而不是jdk运行文件引起的。

我已将 java-1.7.0-openjdk-1.7.0.55-2.4.7.1.el6_5.x86 作为 yum 包安装。

[root@ ~]# java -version
java version "1.7.0_55"
OpenJDK Runtime Environment (rhel-2.4.7.1.el6_5-x86_64 u55-b13)
OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)

我认为要解决这个问题,我需要使用 jdk 运行 jar 文件。 jdk bin 文件是否有某种 jdk 路径?如果有的话,centos 里是什么?我用谷歌搜索了一段时间,发现了几十条错误的路径。我觉得很愚蠢,因为我认为jre是jdk的一部分,而jdk仅用于编译东西,我不认为你可以用jdk运行文件...... ... ...

最佳答案

无法找到的类位于 JDK 的 tools.jar 中。即使您使用 JDK 而不是 JRE,该库通常也不会自动位于类路径中。

根据documentation ,在 Linux 上,warmroast 应按如下方式启动(将 PATH_TO_JDK 替换为 JDK 的路径):

java -Djava.library.path=PATH_TO_JDK/jre/bin -cp PATH_TO_JDK/lib/tools.jar:warmroast-1.0.0-SNAPSHOT.jar com.sk89q.warmroast.WarmRoast --thread "Server thread"

这里,tools.jar 被手动添加到类路径中。

关于java - 运行 java 分析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23706415/

相关文章:

java - Kafka 日志中缺少偏移量 - 简单消费者无法继续

java - 无法对我的字符串 ArrayList 进行排序

java - GCP App 引擎上未找到 logback xml 文件异常

java - JSF 和 PrettyFaces : Error 500 performing resource injection when I try to rewrite a url page

java - Nimbus 外观和感觉 JAVA - 更改组件的全局大小

Java 享元模式 : Extrinsic and Intrinsic states?

java - 带有子多模块的 Maven 依赖关系

java - SOAPMessage GZIP 实现

java - Android:GridView 在 getView 中重置位置

java - 如何在java中使用Selenium webdriver单击IE浏览器的Activex Install按钮