【问题标题】:ImageMagick unable to find the path of convert.exe in packed WAR of Spring bootImageMagick在Spring boot的打包WAR中找不到convert.exe的路径
【发布时间】:2018-05-01 10:33:57
【问题描述】:

我正在使用 ImageMagick 来裁剪图像文件。我正在部署带有 ImageMagick 的打包 WAR。 ProcessStarted 类的 searchForCmd() 函数无法从 WEB-INF/classes 中找到 ImageMagick 的文件,即

file:/D:/Project/build/libs/proj-0.0.1-SNAPSHOT.war!/WEB-INF/classes!/ImageMagick-6.6.1-5

如何在打包战争中访问 c​​onvert.exe。

下面是堆栈跟踪。

 org.im4java.core.CommandException: java.io.FileNotFoundException: convert
    at org.im4java.core.ImageCommand.run(ImageCommand.java:219)
    at com.os.util.helper.ImageCropHelper.cropImageByImageMagic(ImageCropHelper.java:316)
    at com.os.util.helper.ImageCropHelper.cropImage(ImageCropHelper.java:375)
    at com.os.action.UserAction.mntnUserAvatar(UserAction.java:2566)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at ognl.OgnlRuntime.invokeMethod(OgnlRuntime.java:899)
    at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1544)
    at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:68)
    at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethodWithDebugInfo(XWorkMethodAccessor.java:96)
    at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethod(XWorkMethodAccessor.java:88)
    at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:1620)
    at ognl.ASTMethod.getValueBody(ASTMethod.java:91)
    at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
    at ognl.SimpleNode.getValue(SimpleNode.java:258)
    at ognl.Ognl.getValue(Ognl.java:470)
    at ognl.Ognl.getValue(Ognl.java:434)

【问题讨论】:

  • 我只想指出 ImageMagick-6.6.1-5 是古老的。它有 400 多个版本。您可能需要考虑升级。

标签: java spring-boot imagemagick im4java


【解决方案1】:

WAR 通常不包含 EXE。如果您对外部应用程序有依赖关系,则它们必须安装在部署 WAR 的服务器(或容器中)上。还要考虑您的 Springboot 可以正常运行在 Linux 或 Windows 服务器上,并且每个 IM 可执行文件会有所不同......

【讨论】:

  • 我只想指出 ImageMagick-6.6.1-5 是古老的。它有 400 多个版本。您可能需要考虑升级。
  • @fmw42 这是对问题的评论,而不是对这个答案的评论?
  • @Xenoid 对不起,我不小心发错地方了。这不是我的本意。谢谢。我会在正确的地方重新发布。
猜你喜欢
  • 2017-11-17
  • 2016-04-16
  • 2017-10-31
  • 2015-07-19
  • 1970-01-01
  • 1970-01-01
  • 2017-11-22
  • 2019-12-01
  • 2014-10-29
相关资源
最近更新 更多