程序的一个实例,而不是另一个实例

 2023-01-20    288  

问题描述

我在一台计算机上在Eclipse Java火星上制作了一个大型程序,该计划正常.我将该程序作为可运行的jar-file导出,并且运行它没有任何问题.即使我将整个项目导出到另一台计算机,该程序仍然可以正常工作.

当我对项目进行较小的更改时,问题出现在另一台计算机上.这些更改仅是基于内容的更改,应该对程序的功能没有任何区别. 从Eclipse运行该程序似乎没有问题.,当我想运行新创建的jar-file时,我会收到以下错误:

程序的一个实例,而不是另一个实例

Error: A JNI error has occurred, please check your installation and try again.

接着是一个框架说:

A Java Exception has occurred.

所以我的问题是:

如何有可能通过jar-file运行同一程序的不同实例,而较旧的实例可以?

我在两台计算机上使用了相同的JDK版本(1.8.0_73),并以几乎相同的方式安装了它们:我首先通过合并的版本将Java与NetBeans一起安装.以后,我安装了Eclipse.唯一的区别是,在新计算机上,我离线安装了Eclipse,即没有Eclipse Installer

推荐答案

Eclipse提出了不同的方法来导出项目.要在运行导出的JAR时具有本地库(或库),请选择”生成jar中的包装库” 选项.

其他推荐答案

JNI表示Java本机接口,这意味着该应用程序正在尝试加载本机库.这些本地库不是编译JAR文件的一部分.尝试找出您的应用程序需要哪个本地库,然后将其安装在一台但不安装在另一台计算机上.还要检查您的运行配置.使用JNI,您需要设置-djava.libary.path = 参数以指向本机库.

其他推荐答案

请更新您的JDK到最新版本(JDK 11或12),该问题解决此问题.

以上所述是小编给大家介绍的程序的一个实例,而不是另一个实例,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/25991.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。