Tomcat War安装失败,因为未设置Image Magic Home环境变量(尽管我声明不是这样)

Tomcat War安装失败,因为未设置Image Magic Home环境变量(尽管我声明不是这样),tomcat,grails,imagemagick,centos,war,Tomcat,Grails,Imagemagick,Centos,War,作为grails/groovy/maven/tomcat等的新手,我尝试设置CentOS box来运行grails应用程序。我使用的是VMWare Fusion、CentOS 5.8、Grails 1.3.2、ImageMagick-6.2.8、Tomcat 6.0.35。我选择安装Sun的Java 生成War文件后,我将其复制到Tomcat的webapps目录中 在这一点上,我看到catalina.out中生成了以下错误: 我相信相关部分的错误是:请先设置Image Magic Home环境变

作为grails/groovy/maven/tomcat等的新手,我尝试设置CentOS box来运行grails应用程序。我使用的是VMWare Fusion、CentOS 5.8、Grails 1.3.2、ImageMagick-6.2.8、Tomcat 6.0.35。我选择安装Sun的Java

生成War文件后,我将其复制到Tomcat的webapps目录中

在这一点上,我看到catalina.out中生成了以下错误:

我相信相关部分的错误是:请先设置Image Magic Home环境变量

考虑到这一点,我安装了ImageMagick。我在Google上搜索了Image Magic环境变量,看到了一个名为“$MAGICK_HOME”的变量,所以我执行了export MAGICK_HOME=/usr/share/ImageMagick-6.2.8,并将它放在root的.bashrc文件中。重新启动后,我的用户和root用户似乎都可以执行echo$MAGICK_HOME并获得正确的值

当我将war文件放入webapps文件夹时,仍然会生成相同的错误行

所以我问你们这些善良的互联网居民,我做了什么才配得到这个


事实上,告诉我怎么修就好了。谢谢

即使Tomcat以root用户身份运行,并且root用户可以看到MAGICK_HOME环境变量,但Tomcat在尝试安装依赖于ImageMagick的war时仍然无法看到

我将export语句直接添加到catalina.sh的顶部:

export MAGICK_HOME=/usr/share/ImageMagick-6.2.8

瞧,成功了。也许有一个更好的解决方案,它不涉及这种毫不掩饰的黑客行为。请提交,我很乐意将其标记为最佳解决方案。

既然您已经完成了显而易见的工作,我建议您检查所有问题,是否已插入?诸如此类的事情。tomcat在哪个用户下运行?也许它既不是你的用户也不是根用户?您为$MAGICK_HOME设置的值是否正确?一旦这些东西被检查出来,我会从tomcat/bin/catalina.shThank@greybearedgeek的顶部回显$MAGICK_HOME的价值!这个建议使我找到了解决办法,尽管我不知道为什么。我在catalina.sh的顶部添加了'echo/usr/bin/whoami',它告诉我'root'。root肯定可以从命令行看到MAGICK_HOME路径,所以我不明白为什么我必须导出catalina.sh文件顶部的路径。启动时启动的服务不会运行root的.bashrc,而且大多数服务都会尝试清理其环境,以便在同一环境中运行,而不管它是如何启动的。修改catalina.sh并没有那么糟糕,尽管像这样的定制应该在tomcat bin/目录中名为setenv.sh的文件中完成,如果它不存在,请创建它
export MAGICK_HOME=/usr/share/ImageMagick-6.2.8