编译 dll 是成功的,我是在 windows 下 Eclipse ,Mingw 编译。
编译语句如下: gcc -i d:\jdk\include -i d:\jdk\include\win32 -shared -o smaple1.dll sampel.c然后跑 JAVA 程序(开始用的是 System.loadLibrary(libname),后来改用的是:System.load(libname))报错如下:
Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: D:\WorkSpace\STUDY\bin\Sample1.dll
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1650)
at java.lang.Runtime.load0(Runtime.java:769)
at java.lang.System.load(System.java:967)
at Sample1.main(Sample1.java:9)发现位置不对,再改后,又报错 ,内容如下:Exception in thread "main" java.lang.UnsatisfiedLinkError: intMethod
at Sample1.intMethod(Native Method)
at Sample1.main(Sample1.java:15)既然编译也通过了,也载入了 dll 文件,哪是怎么回事呢?