【问题标题】:Windows error 2 occured while loading the Java VM加载 Java VM 时出现 Windows 错误 2
【发布时间】:2012-06-06 19:31:56
【问题描述】:

我一直在尝试从 Qualcomm 安装这个 ARToolkit: https://ar.qualcomm.at/qdevnet/ (Windows“.exe”版本)在 Windows 7 64 位平台上,我不断收到错误:

加载 Java VM 时出现 Windows 错误 2

尝试安装此程序的程序是 InstallAnywhere,但我似乎找不到有关此错误的任何文档。崩溃发生时的对话框名称是 LaunchAnywhere

我只是想知道是否有人以前见过这种错误,如果有,如何解决。我可以在网上找到的极少数答案与 Win98/ME 问题有关,因此它们无关紧要。

如果这有点相关,我目前正在使用 JDK 1.7.0_04 和 jre 1.7。

【问题讨论】:

  • 我们使用旧版本 (7.1) 的 InstallAnywhere 自行构建的安装程序也存在类似问题。事实证明,我们没有让安装程序在 64 位 Java VM 上运行。最后,我们捆绑了一个 32 位 VM,仅供安装程序运行。安装程序找不到的文件(“windows error 2”)是“程序文件(86)”中的一些 32 位 vm dll。由于您无法更改安装程序,因此您可以尝试安装 32 位 VM,仅用于安装时间。一旦安装了 ARToolkit,我想你可以切换回(重新安装)到 64 个 VM,也许一切仍在运行 ;-)。
  • 请注意,Windows 的消息拼写错误“发生”!

标签: java windows installation installanywhere


【解决方案1】:

使用以下命令行参数启动安装程序:

LAX_VM

例如: 安装XYZ.exe LAX_VM "C:\Program Files (x86)\Java\jre6\bin\java.exe"

【讨论】:

【解决方案2】:

在cmd中

C:\Users\Downloads>install.exe LAX_VM "C:\Program Files\Java\jdk1.8.0_60\bin\java.exe"

【讨论】:

  • 这很好用,不知道为什么它被否决了。
  • 为了卸载,我编辑了一个 .lax 文件,其中包含 javaw.exe 的过时路径。安装时我使用了上述方法,但使用了 javaw.exe,两者都有效。
  • +1 非常适合我 - 但如果我是 java.exe 在默认位置但未安装 exe?
  • @kaiten65 它被否决了,因为它与三个月前发布的答案重复。
  • 感谢@Alexander 的澄清
【解决方案3】:

对我来说,它可以在我的系统环境 PATH 变量中删除“C:\ProgramData\Oracle\Java\javapath”

编辑: 如果您没有该变量或它不起作用,您可以直接删除或重命名目录“C:\ProgramData\Oracle\Java\javapath”

【讨论】:

    【解决方案4】:

    “Windows 错误 2”有几十个含义(我能找到 52 个)。

    最常见的是ERROR_FILE_NOT_FOUND,可以在winerror.h找到。没有更多的上下文,这是我能猜到的最好的。您是否查看了事件日志以查看是否有更多信息?

    【讨论】:

      【解决方案5】:

      我们无法卸载程序,遇到“Windows 错误 2 无法加载 Java VM”。将Java路径添加到PATH变量,卸载并重新安装Java 8,问题不会消失。

      然后我在网上找到了这个解决方案,并在第一时间为我们工作: - 卸载 Java 8 - 安装 Java 6

      不管是什么原因,使用 Java 6,错误消失了,我们卸载了程序,然后重新安装了 Java 8。

      【讨论】:

      • +1 来自我,这是帮助卸载 Kony Visualiser 的唯一方法。为什么不降级Java RE版本就无法卸载程序,这超出了我的理解。
      【解决方案6】:

      如果安装后出现错误: 找到具有匹配 exe 名称的 .lax 文件并从以下位置更新当前 vm 路径:

      lax.nl.current.vm=C:\ProgramData\Oracle\Java\javapath\java.exe

      lax.nl.current.vm=C:\Program Files\Java\jre1.8.0_144\bin\java.exe

      【讨论】:

      • 没错,这个神秘的 Windows 错误 2 基本上意味着您没有指定有效的 Java VM。
      【解决方案7】:

      尝试将C:\path\to\java\jre\bin 添加到您的系统环境变量PATH 并再次运行。这对我有用!

      【讨论】:

      • 您可以通过指定要修改的特定系统环境变量并添加有关它将做什么的更多详细信息来改进您的答案。
      【解决方案8】:

      我认为应该是.....\javaw.exe"。它对我有用。谢谢。

      【讨论】:

        【解决方案9】:

        我有同样的错误,它是因为我在 InstallAnywhere 中禁用了“_jvm”的创建(项目 - JVM 设置 - 安装程序设置 - 捆绑/下载的虚拟机),然后进入文件“Uninstall $PRODUCT_NAME$.lax”进入卸载文件夹,变量“lax.nl.current.vm”为空。

        如果您不需要禁用 jvm,请选中复选框中的“安装捆绑/下载的虚拟机”选项(项目 - JVM 设置 - 安装程序设置 - 捆绑/下载的虚拟机)。

        如果您需要禁用 jvm,因为您手动创建它,那么您可以执行以下操作: 创建一个操作“Modify Text File”以使用 _jvm 文件夹的值附加变量。

        (Existing File)
        $USER_INSTALL_DIR$\Uninstall_$PRODUCT_NAME$ \Uninstall $PRODUCT_NAME$.lax
        
        (Append)
        
        lax.nl.current.vm=..\_jvm\bin\java.exe
        

        【讨论】:

          【解决方案10】:

          将 java 从 1.8.0_202 升级到 1.8.0_211 后我遇到了同样的问题

          问题:

          以下是安装新版 Java 1.8.0_211 的目录:

          c:\Program Files\Java\jre1.8.0_211\bin 目录 c:\Program Files (x86)\Common Files\Oracle\Java\javapath的目录

          所以一个位于 32 位,第二个位于 64 位 Program files 文件夹中。 PATH 中指定的版本是 32 位版本(c:\Program Files (x86)\Common Files\Oracle\Java\javapath),即使它是安装的 Java 的 64 位版本。

          解决方案:

          从 c:\Program Files 更改系统环境变量 PATH (x86)\Common Files\Oracle\Java\javac:\Program 的路径 文件\Java\jre1.8.0_211\bin

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-06-20
            • 2016-09-11
            • 2017-04-04
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多