java – JNI – 本机方法的UnsatisfiedLinkError
我正在运行Windows XP.显然JNI和UnsatisfiedLinkError齐头并进……我注意到大多数时候,链接器错误看起来像这样:
但这不是我的问题; Java可以找到我的DLL.我收到一个错误,让我觉得我的方法命名错误:
我曾尝试在StackOverflow上查看一些类似的问题,如this one,this one,this one,this one和this one,但这些方法都没有奏效.我还在Ubuntu论坛上找到了this thread,看起来我遇到了完全相同的问题,但提问者没有说他们如何解决自己的问题(这真的很糟糕).所有谷歌搜索都给了我一个与java.library.path相同的错误. 这是我的实际代码. NativeTest.java
NativeTest.h
NativeTest.c
在cmd.exe中:
最佳答案
经过一段时间的乱码和谷歌搜索来解决相同的问题后,我发现GCC不会生成JVM可以解析符号的DLL.但是可以将正确的命令行args传递给GCC然后它可以工作:
请参阅有关该主题的this MinGW帖子.需要传递“-D_JNI_IMPLEMENTATION_ -Wl,– kill-at”作为附加标志.不知道是否需要所有这些或仅仅是第一位. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |