【问题标题】:Attempting to execute JavaFX program Jar file yeilds "Error: A JNI error has occurred, please check your installation and try again"尝试执行 JavaFX 程序 Jar 文件时出现“错误:发生 JNI 错误,请检查您的安装并重试”
【发布时间】:2021-11-13 08:39:59
【问题描述】:

我正在尝试导出并运行一个 JavaFX 项目,在通过 Eclipse 导出项目后,导致创建了 Jar,我双击它,我从 JVM 收到这两条错误消息作为窗口中的弹出窗口. “错误:发生 JNI 错误,请检查您的安装并重试”和“发生 Java 异常。”

这是我在eclipse中创建Jar文件的过程。

ProjectName>Export>Java>Runnable JAR file> 然后选择导出目标并使用默认选择的启动配置。库处理选择为“Extract required libraries into generated JAR”然后完成。

我在尝试双击 Jar 后收到错误消息。如果这不是运行 Java 程序的正确过程,请原谅我,因为这是我第一次尝试。

我尝试下载launch4j,并按照本指南https://medium.com/mpercept-academy/how-to-make-a-executable-file-from-your-java-code-3f521938ae5c 在Windows 中将其作为.exe 运行,但在选择最低JRE 为1.7.0、创建.exe 并尝试运行后,我得到了一条消息“需要 JRE 1.7.0”。

我也尝试使用此脚本,但它以前在 Mac 上使用过,我不确定如何创建一个可以在 Windows 的 PowerShell 中工作的等效脚本。

导出 PATH_TO_FX_MODS=/Users/mh6624pa/Documents/javafx-jmods-15.0.1 jlink --module-path $PATH_TO_FX_MODS:bin/edu.ics372.pa2 --add-modules=edu.ics372.pa2 --output pa2 pa2/bin/java -m edu.ics372.pa2/edu.ics372.pa2.DrawDiamond

以下是有关我的设置的一些详细信息。 Corretto 11.0.8.10.1 JavaFX SDK 16 JavaFX-jmods 17.0.0.1 但不确定我是否需要 jmods 或者我是否会使用它来使可执行文件工作。 视窗 10

当我在 Eclipse 中运行程序时,我没有任何编译时或运行时错误。我不确定这是否是代码问题,或者我只是不知道如何正确创建可执行文件。如果您需要查看代码或有关我的设置的任何其他详细信息,请告诉我。

[更新] 我已将 Java JDK 更新到 16 并弄乱了构建路径,现在我不再看到错误消息,但现在单击 .exe 或 .jar 文件时都没有执行任何操作。

【问题讨论】:

  • 也许可以试试JPackageScriptFX,或者至少看看它,看看它是否是你想做的事情。我认为只是让 eclipse 导出一个 jar 可能最终不会成为您分发应用程序的方式。
  • 可能是 How can I create a Windows .exe (standalone executable) using Java/Eclipse? 的副本。这个问题是关于 exe 文件的,这个问题的标题是 jar 文件,但正文谈论的是 exe 文件。我将我的答案与相关问题相关联,因为其他已接受的答案已过时。

标签: java eclipse javafx executable


【解决方案1】:

我能够弄清楚。我需要使用以下脚本在 Windows 中创建可执行文件。

C:\path\to\jlink --module-path C:\path\to\javafx-jmods 版本;C:\path\to\jdk;path\to\class\files\in\project -output C:path\to\where\you\want\executable\created

【讨论】:

    猜你喜欢
    • 2020-01-13
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-05
    相关资源
    最近更新 更多