我创建的 JAR 文件仅在安装了 JDK 的计算机上运行
JAR file I created runs only on computers with JDK installed
我最近使用 NetBeans IDE 创建了一个应用程序。我部署了它并创建了一个 jar 文件,它 运行 在我的计算机和任何安装了 Java JDK 的计算机上都完美无缺,但是当我尝试在另一台计算机上 运行仅安装了 JRE 的计算机显示:
"Error: A JNI error has occurred, please check your installation and try again"
接着
"A Java Exception has occurred."
如果你有 JDK 用来创建版本 1 的 jar 和版本 2 的 jre 那么你会遇到这种错误。
例如:
如果我使用 Java JDK 12 安装在我的计算机#1 上来创建 jar。
同时,我在我朋友的电脑上安装了 Java 8 (JRE)。
所以在我朋友的电脑上它不工作,因为它有 jre8..
我输入了以下命令进行故障排除:
在计算机#1 上:
javac -version
// 这给了我 Java 12
在计算机#2 上
java -version
// 这给了我 Java 8
换句话说,我的程序正在使用 Java 12(计算机 1)进行编译,我正在尝试 运行 在计算机 2 上使用 Java 8。
要解决此问题,请在用于开发的 java 相同版本上尝试 运行ning jar。表示匹配 jdk 和 jre 版本。
我最近使用 NetBeans IDE 创建了一个应用程序。我部署了它并创建了一个 jar 文件,它 运行 在我的计算机和任何安装了 Java JDK 的计算机上都完美无缺,但是当我尝试在另一台计算机上 运行仅安装了 JRE 的计算机显示:
"Error: A JNI error has occurred, please check your installation and try again" 接着 "A Java Exception has occurred."
如果你有 JDK 用来创建版本 1 的 jar 和版本 2 的 jre 那么你会遇到这种错误。
例如: 如果我使用 Java JDK 12 安装在我的计算机#1 上来创建 jar。 同时,我在我朋友的电脑上安装了 Java 8 (JRE)。 所以在我朋友的电脑上它不工作,因为它有 jre8..
我输入了以下命令进行故障排除: 在计算机#1 上:
javac -version
// 这给了我 Java 12
在计算机#2 上
java -version
// 这给了我 Java 8
换句话说,我的程序正在使用 Java 12(计算机 1)进行编译,我正在尝试 运行 在计算机 2 上使用 Java 8。
要解决此问题,请在用于开发的 java 相同版本上尝试 运行ning jar。表示匹配 jdk 和 jre 版本。