jmagick java_Java使用jmagick处理图片遇到的异常

java通过ImageMagick处理图片遇到问题:

下面异常都是我一个一个遇到的:

异常1:

Exception in thread "main" java.lang.UnsatisfiedLinkError: F:\Windows\System32\jmagick.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform

原因:我的jdk是64位的,而jmagick.dll是32位的,据说jmagick.dll没有64位的

解决办法:更换jdk,把jdk修改成32位的就好了

异常2:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no JMagick in java.library.path

原因:jmagick.dll没有在运行环境中

解决办法:把jmagick.dll放在运行所使用的jdk目录下的bin目录下面(为什么这里说运行所使用的,因为可以安装多个jdk版本,通过Myeclipse调试的时候可以选择jdk),如果是web程序在tomcat下面,可以把jmagick.dll放在tomat下bin目录或者tomcat运行所使用的jdk的bin目录

异常3:

Exception in thread "main" java.lang.UnsatisfiedLinkError: G:\Program Files\Java\jdk1.6.0_45_32\bin\jmagick.dll: Can't find dependent libraries

原因:没有找到jmagick.dll依赖相关的dll库

解决办法:1.直接把ImageMagick-6.3.9-Q8目录下的文件复制到jdk1.6.0_45_32\bin目录下(如果有tomcat,也可以复制到tomcat下),这种方式不推荐。2.在环境变量classpath中加入"G:\Program Files (x86)\ImageMagick-6.3.9-Q8",也就是ImageMagick-6.3.9-Q8的安装目录。

这里说明一下我最终成功的开发环境(因为环境不一样有的时候解决问题的方法也不一样,我之前就是是用网上的配置方式,无论如何不成功)

1.操作系统win8

2.32位的jdk1.6.0_45

3.apache-tomcat-6.0.35

遗留问题:总是觉得只能用32位的jdk不太方便,总不能为了这个而换成32位的jdk,后面如果发现有解决这个问题的办法在继续完善。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值