Ghidra 的 JDK 给我错误:“无法找到或加载主类 LaunchSupport”

问题描述

我为我的 Windows 10 64 位电脑下载了 JDK 15,并将环境变量 JAVA-HOME 和 PATH 设置正确。这给了我 cmd:

    C:\Users\patpin>java -version
    java version "15.0.2" 2021-01-19
    Java(TM) SE Runtime Environment (build 15.0.2+7-27)
    Java HotSpot(TM) 64-Bit Server VM (build 15.0.2+7-27,mixed mode,sharing)

当我启动 Ghidra(即使是管理员)时,我得到:

    Error: Could not find or load main class LaunchSupport
    Caused by: java.lang.classNotFoundException: LaunchSupport
    Error: Could not find or load main class LaunchSupport
    Caused by: java.lang.classNotFoundException: LaunchSupport
    Error: Could not find or load main class LaunchSupport
    Caused by: java.lang.classNotFoundException: LaunchSupport

未能找到支持的 JDK。请参阅 Ghidra 安装指南的故障排除部分。

解决方法

也许这个问题可以通过更新lunch.properties文件来解决。

首先,尝试满足他们的最低要求。根据 ghidra 的文档

  • 当前的 Ghidra 9.2.2 需要 Java 11 64 位运行时和开发工具包 (JDK)
  • 因此,最好安装 Java 11 64 位。

如果 ghidra 无法定位 jdk,则通过-

强制它
  • 要使用特定版本的 Java 启动,请在 support/launch.properties 文件中设置 JAVA_HOME_OVERRIDE 属性。如果此属性设置为不兼容的 Java 版本,Ghidra 将恢复为自动定位兼容版本。
,

这可能是因为您使用的是来自 github 的发行版,而这些发行版并未构建,仅包含源代码。 来源:https://github.com/NationalSecurityAgency/ghidra/issues/2872

要解决此问题,您可以尝试从此处下载 ghidra https://www.ghidra-sre.org/