15

在安装了我的应用程序的某些计算机(但不是所有计算机)中,在看似成功安装之后,当您尝试运行它时,它会显示此错误:

在此处输入图像描述

该文件存在于该目录中,因此,我不确定为什么它说找不到库。

该错误之后是

在此处输入图像描述

最后:

在此处输入图像描述

然后什么也没有发生。应用程序没有启动。有什么想法吗?

有些人指出这个错误报告似乎在谈论这个问题:https : //bugs.openjdk.java.net/browse/JDK-8191176 但我已经用 8u162 和 8u172 构建了我的应用程序(早期访问,特别是, jdk-8u172-ea-bin-b03-windows-x64-18_jan_2018),结果是一样的。它发生在 Windows 10 Pro 1703 和 1709 上。

我不确定还有什么相关的。

4

2 回答 2

3

会不会是您受到JDK-8191176 的影响:JavaFX 自包含应用程序失败并出现错误“无法找到库:jvm.dll”,该错误影响了 8u151,并已在 8u162 中修复。

在具有相应 JDK 版本的 Windows 10 Enterprise build 1709 上再次验证,并可以确认报告的问题。如使用 JDK 8u151/8u152 检查时所述,弹出“找不到库:jvm.dll”和随后的错误对话框。

也许您可以检查使用 8u162 或更高版本运行时会发生什么。

于 2018-03-27T17:12:00.833 回答
1

这是有点错误的错误信息,实际上意味着一些依赖 .dll 没有找到。jvm.dll 的依赖项之一不是 jvm.dll 本身。

来自https://bugs.openjdk.java.net/browse/JDK-8191176

对于任何寻求解决方案的人,我从 Java 中提取了“msvcr100.dll”并将其添加到我的应用程序源中。在构建我的 JavaFX 项目(使用 InnoSetup)时使用 JavaPackager 时,我只需在 setup.iss 脚本中添加这些行,以便将文件放在 application.exe 旁边:

[Files] 
Source: "YOUR_APPLICATION\app\msvcr100.dll"; 
DestDir: "{app}"; 
Flags: ignoreversion 
于 2018-03-30T18:04:53.057 回答