0

我为 im4java 1.4.0 添加了 gradle 依赖项。并尝试在我的 linux 系统中运行该应用程序。

这是代码

public static void main(String[] args) throws Exception {
    // TODO Auto-generated method stub
    IMOperation op = new IMOperation();
    op.addImage();  
    op.resize(400, 500);// input
    op.addImage("png:-");                 // output: stdout
    BufferedImage image = ImageIO.read(new URL("http://pic.youmobile.org/imgcdn/google_icon_play_materiel.png")); 
    // set up command
    ConvertCmd convert = new ConvertCmd();
    Stream2BufferedImage s2b = new Stream2BufferedImage();
    convert.setOutputConsumer(s2b);


    // run command and extract BufferedImage from OutputConsumer
    convert.run(op,image);

    BufferedImage img = s2b.getImage();
    ImageIO.write(img, "png", new File("output.png"));

      }

但它抛出了错误

     Exception in thread "main" org.im4java.core.CommandException: java.io.IOException: Cannot run program "convert": error=2, No such file or directory
at org.im4java.core.ImageCommand.run(ImageCommand.java:219)
at com.quixey.media.service.converter.Test.main(Test.java:33)
     Caused by: java.io.IOException: Cannot run program "convert": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.im4java.process.ProcessStarter.startProcess(ProcessStarter.java:407)
at org.im4java.process.ProcessStarter.run(ProcessStarter.java:312)
at org.im4java.core.ImageCommand.run(ImageCommand.java:215)
... 1 more
     Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:248)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 4 more

这个错误是关于什么的?如何解决?

4

1 回答 1

1

它正在尝试运行 imagemagick 的convert命令,但PATH. im4java 只是一个从 java 程序运行 imagemagic 的命令的接口。您需要在PATH.

于 2016-02-11T13:52:54.897 回答