JAVA-----JNI调用小bug

来源:互联网 发布:淘宝用户需求分析 编辑:程序博客网 时间:2024/06/01 10:36

在JAVA调用JNI时,本机时可以成功调用。但是将程序打包成JAR部署到云主机时,发生异常。
java.lang.UnsatisfiedLinkError:can't find dependent libraries
解决:通过DLL依赖查看器,查询该DLL依赖的库文件。将缺少的库文件拷贝到目标机器。
可以下载缺少的库文件:

  1. 可以运行的主机的/System32/目录下直接复制缺少的dll文件至目标机器的/System32/下。
  2. 或者将缺少的dll文件集中放在某文件夹下,将该文件夹添加至环境变量的Path中。

完成以上步骤后,有可能会发生java.lang.UnsatisfiedLinkError:XX不是有效的Win32应用程序
有可能是上面步骤的DLL文件版本不对,或者JAVA的版本(32/64)与编译DLL的版本(32/64)不一致导致的。
我推荐上面的第二种做法,成功率较高。

原创粉丝点击