【发布时间】:2023-04-06 14:30:01
【问题描述】:
这是我的代码,我已将 .dll 添加到 Java_Home 所在的位置。我有这个错误:
线程“main”中的异常 java.lang.UnsatisfiedLinkError: proiectP.JavatoC.getval(I)I at proiectP.JavatoC.getval(Native 方法)在 proiectP.JavatoC.main(JavatoC.java:19)
public class JavatoC {
public native int getval(int b);
static {
System.loadLibrary("main");
}
public static void main(String[] args) {
try {
int a;
int b=3;
a= new JavatoC().getval(b);
System.out.println(a);
} catch(Exception e) {
System.out.println(e);
}
}
}
我也尝试写a= new proiectP.JavatoC().getval(b),因为 proietP 是包。它不起作用。
【问题讨论】:
-
只是猜测,也许您正在尝试将 32 位本机接口 DLL 与 64 位 Java 运行时一起使用,反之亦然?
-
一开始我犯了那个错误,并告诉我这是错误的,但现在我安装了一个 32 位 JDK,我不再有那个错误,但是我告诉你的那个错误。 Jdk 是 32 位的。