首页 > 代码库 > Centos7 安装最新的Jmagick 6.7.7 版本使用ImageMagick

Centos7 安装最新的Jmagick 6.7.7 版本使用ImageMagick

1,安装环境

yum install autoconf ImageMagick ImageMagick-devel

需要C++类库。

编译so文件的时候需要java的头文件,所以必须安装openjd

 yum install java-1.6.0-openjdk java-1.6.0-openjdk-devel 


2,安装Jmagick


官方网已经不更新,只有一个github上面的项目在维护。

https://github.com/techblue/jmagick

安装文档:

https://github.com/techblue/jmagick/blob/master/INSTALL

貌似git克隆有问题,直接下载 zip 包。

wget https://github.com/techblue/jmagick/archive/master.zip
unzip  jmagick-master.zip
cd jmagick-master
autoconf
 ./configure  -with-java-home=/usr/java/default
make all
make install

所有编译安装都没有问题就可以了,然后再lib下面就又jar包和so文件了,其实已经安装到了/usr/local/lib/

-rwxr-xr-x. 1 root root  27609 Nov 27 10:22 jmagick-6.7.7.jar
-rwxr-xr-x. 1 root root 146606 Nov 27 10:22 libJMagick-6.7.7.so
lrwxrwxrwx. 1 root root     21 Nov 27 10:22 libJMagick.so -> ./libJMagick-6.7.7.so


3,tomcat启动问题


tomcat启动的时候需要增加参数,否则初始化不成功。

java.lang.NoClassDefFoundError: Could not initialize class magick.ImageInfo

解决办法,修改tomcat 启动。

修改  catalina.sh 在注释之后增加参数。

JAVA_OPTS="-Djava.library.path=/usr/local/lib -Djmagick.systemclassloader=no -server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

参考博客:http://shengren-wang.iteye.com/blog/1167862

4,安装包


最重要的就是 so文件,如果已经编译好了就可以将so文件拷贝到其他服务器使用,而不用在编译了。



Centos7 安装最新的Jmagick 6.7.7 版本使用ImageMagick