我在一台计算机上用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安装程序)
Eclipse提供了导出项目JAR的不同方法。要在运行导出的JAR时使本机库可用,请选择 “在生成的JAR中打包所需的库” 选项。