问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求助,用eclipse编写JNI程序出现UnsatisfiledLinkError异常

发布网友 发布时间:2023-04-26 20:52

我来回答

1个回答

热心网友 时间:2023-10-20 19:40

你好,解决方法如下:
// Invoked in the java.lang.Runtime class to implement load and loadLibrary.
static void loadLibrary(Class fromClass, String name,
boolean isAbsolute) {
try {
if (!DownloadManager.isJREComplete() &&
!DownloadManager.isCurrentThreadDownloading()) {
DownloadManager.downloadFile("bin/" +
System.mapLibraryName(name));
// it doesn't matter if the downloadFile call returns false --
// it probably just means that this is a user library, as
// opposed to a JRE library
}
} catch (IOException e) {
throw new UnsatisfiedLinkError("Error downloading library " +
name + ": " + e);
} catch (NoClassDefFoundError e) {
// This happens while Java itself is being compiled; DownloadManager
// isn't accessible when this code is first invoked. It isn't an
// issue, as if we can't find DownloadManager, we can safely assume
// that additional code is not available for download.
}
ClassLoader loader =
(fromClass == null) ? null : fromClass.getClassLoader();
if (sys_paths == null) {
usr_paths = initializePath("java.library.path");
sys_paths = initializePath("sun.boot.library.path");
}
if (isAbsolute) {
if (loadLibrary0(fromClass, new File(name))) {
return;
}
throw new UnsatisfiedLinkError("Can't load library: " + name);
}
if (loader != null) {
String libfilename = loader.findLibrary(name);
if (libfilename != null) {
File libfile = new File(libfilename);
if (!libfile.isAbsolute()) {
throw new UnsatisfiedLinkError(
"ClassLoader.findLibrary failed to return an absolute path: " + libfilename);
}
if (loadLibrary0(fromClass, libfile)) {
return;
}
throw new UnsatisfiedLinkError("Can't load " + libfilename);
}
}
for (int i = 0 ; i < sys_paths.length ; i++) {
File libfile = new File(sys_paths[i], System.mapLibraryName(name));
if (loadLibrary0(fromClass, libfile)) {
return;
}
}
if (loader != null) {
for (int i = 0 ; i < usr_paths.length ; i++) {
File libfile = new File(usr_paths[i],
System.mapLibraryName(name));
if (loadLibrary0(fromClass, libfile)) {
return;
}
}
}
// Oops, it failed
throw new UnsatisfiedLinkError("no " + name + " in java.library.path");
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
找专业防水队做完还漏水怎么维权 法院会受理房屋漏水造成的纠纷吗? 巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 用ndk在jni里怎么跑出异常 好游戏89.9分,提灯与地下城玩转Roguelike新花样 提灯与地下城先知粉尘怎么获得 提灯与地下城极品契约兽怎么出 提灯与地下城先知粉尘怎么获取 提灯与地下城宠物资质怎么互换 提灯与地下城天赋置换规则是什么 请人帮我看看我的命如何83年5月28日11点30。但是有人说要是子时就是阴历4月17 属蛇男人83岁是不是有个坎 高分子化合物及其合成? 立体对联怎么安装 什么是立体对联 怎么在电脑上面登录两个啊 如何在电脑上使用两个? 现在tb上不能注册的k3大量现货,都怎么冒出来的 机情烩oppo新机223日发4800万镜头10倍光学变焦大量现货 均码大量现货,尺码,均码限量促销啥意思 大量现货如何找外贸公司出货? 大量现货供应后面怎么说 黑色狐狸毛变黄去干洗店能洗干净吗 以美丽来回答一切——西江千户苗寨 公务员考到几岁不能考 西江苗寨,让美丽回答一切的地方|西江在哪里属于哪个省 公务员几岁可以考 公务员最晚几岁可以考 黔东南如何借助余秋雨的品牌效应 外地人在南京办什么证? 谁在用XL2546,这款显示器值得花4000块去买 apex台湾服务器怎么样 台服是哪个区 中级经济师证书有成绩吗? 中级经济师会调分吗 中级经济师考试成绩保留吗 剑三多少级可以收徒 剑侠世界手游怎么拜师收徒 剑侠情缘手游8月19日更新了什么 在internet的通信协议中可靠的数据传输是由什么协议来保证的 test英文 吃完牛肉可以吃榴莲吗?牛肉和榴莲能一起吃吗? 吃了榴莲能吃牛肉吗?