用eclipse 开发,调用dll,eclipse调用都已经ok了,现在打包成jar,会报错,用了3种打包方法
第一种,直接export->jar file的方式,指定了main函数,所有的jar文件,以及dll文件都包含到了,报错如下:
第二种 export->runnable jar file,也指定了main函数,不过,这个没办法dll文件打包进jar,我手动拷贝进去的
第三种 fat 打包的,各种文件都包含到jar中了
求大神指导
<p>我自己来回答这个问题吧,</p>
自己排除了
首先说下是用JNA调用DLL的
(1)解决问题用的打包方式是fat打包
(2)打包报错的原因是eclipse里面用的jdk(jdk1.7.0_51)版本和电脑本身配置的jdk(1.8.0_141)版本不一样导致的,估计1.8版本不支持(之前在开发的时候,在另外一台电脑上,eclipse就报unable to load library的问题,查询了,好多说貌似只能用32位的jdk,)
(3) 重新配置java_home,配置了两个1.7版本一个是
这个还是不行,后来换成了下面这个
这个才是可以
估计还是只32位的JDK才可以
,不过配置的时候也遇到问题了,配置后,一直不生效,java -version后,怎么都是1.8的,后来查到要做以下几个操作
a)删掉C:\Windows\System32的java.exe、javaw.exe、javaws.exe三个文件,这里面的优先级高于环境变量配置
b)如果a不行(我的就是的),删掉C:\ProgramData\Oracle\Java\javapath目录下java.exe、javaw.exe、javaws.exe三个文件(我的是快捷方式)
我的做了以上操作后,再用命令调用就OK了
这个问题最近弄了3天了,终于搞定了,不过,另外一个电脑上还是不行,在eclipse里面都不OK,任重道远啊
<p>补充下,关于java_home不生效还有一种情况,就是在需要再path里面配置bin的路径<br>
另外一台机子也重要搞定了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。