在CentOS4上安装JMagick

时间:2022-05-25 01:09:00

用Java做网站经常要处理用户上传的图片,例如生成缩略图等等。虽然Java可以使用Java2D进行一些图片操作,但是功能和效率实在太差了。 目前比较好的是用JMagick来进行图像处理,不过JMagick是通过JNI调用ImageMagick的,对平台有一定依赖。本篇文章就是在 CentOS4上安装JMagick。

版本问题
CentOS4内置的软件版本一直都比较低,ImageMagick就只有6.0.7。另外JMagick也很久没有更新了,最新版是6.2.6-0,对 应使用ImageMagick 6.2.6。而ImageMagick官方网站上只有6.3.8。情况有点混乱,最后决定使用最新版的ImageMagick和最新版的JMagick, 似乎工作正常。

从ImageMagick官方ftp上下载最新版的ImageMagick和JMagick(是的,这里也有下载),分别解开。进入 ImageMagick目录,运行

./configure –prefix=/usr/local/ImageMagick
make
make install

因为我不想跟系统的ImageMagick相冲,于是安装到独立的目录里面了

然后进入JMagick的目录,运行

./configure –prefix=/usr/local/jmagick \
–with-magick-home=/usr/local/ImageMagick \
–with-java-home=/opt/jdk
make all
make install

因为我的jdk是自己安装的,所以直接指定了。如果你遇到找不到java的错误,检查一下你是否配置了JAVA_HOME环境变量等,实在不行,就 加上这个

export PATH=/opt/jdk/bin:$PATH

如果提示找不到ImageMagick相关资源,就加上这个

export PATH=/usr/local/ImageMagick/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/ImageMagick/lib

安装成功之后,就是在tomcat里面使用的问题了,我不习惯在整个系统里面增加环境变量的做法,一般来说,我会在具体的引用启动脚本里面加上环境 变量的配置

打开tomcat/bin/catalina.sh,在顶部加入

LD_LIBRARY_PATH=/usr/local/ImageMagick/lib
CATALINA_OPTS=”-Djava.library.path=/usr/local/jmagick/lib”

测试成功