我在一台运行良好的计算机上用 Eclipse Java Mars 编写了一个大型程序。我将程序导出为可运行的 Jar 文件并运行它没有任何问题。即使当我将整个项目导出到另一台计算机时,该程序仍然有效。
当我对项目进行细微更改时,另一台计算机上出现了这个问题。这些更改只是基于内容的更改,不会对程序的功能产生影响。 从 eclipse 运行程序似乎没有问题。 但是,当我想运行新创建的 Jar 文件时,出现以下错误:
Error: A JNI error has occurred, please check your installation and try again.
接着是一个框架说:
A Java Exception has occurred.
所以我的问题是:
同一个程序的不同实例怎么可能不能通过 Jar 文件运行,而旧实例可以呢?
我在两台计算机上使用相同的 JDK 版本 (1.8.0_73),并以几乎相同的方式安装它们:我首先通过组合版本安装 Java 和 NetBeans。接下来,我安装了 Eclipse。唯一的区别是在新电脑上我离线安装了eclipse,即没有Eclipse安装程序
原文由 Robin Kramer-ten Have 发布,翻译遵循 CC BY-SA 4.0 许可协议
Eclipse 提供了为项目导出 JAR 的不同方法。要在运行导出的 JAR 时使用本机库(或多个库),请选择 “在生成的 JAR 中打包所需的库” 选项。