1

过去一周我试图在我的应用程序中使用 JMagick,但 sm 仍然不成功。我使用默认安装目录从源代码本身安装了 JMagick 6.4.0 和 ImageMagick 6.4.0。我可以在 /usr/local/lib 中看到共享库。

现在我尝试使用 option 运行以下程序-Djava.library.path=/usr/local/lib

public class JMagickTest {
    public static void main(String[] args) {
        try {
            System.setProperty("jmagick.systemclassloader", "false");
            System.out.println(System.getProperty("java.library.path"));
            ImageInfo info = new ImageInfo("/home/blue_bg.jpg");
            MagickImage image = new MagickImage(info);
            System.out.println(image.getBackgroundColor());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

它给出了以下错误。

/usr/local/lib
magick.MagickException: Unable to retrieve handle
        at magick.MagickImage.getBackgroundColor(Native Method)
        at JMagickTest.main(JMagickTest.java:19)

任何人都可以在这里帮助我。还有一些人可以建议从系统中卸载 ImageMagick 的正确方法。

在此先感
谢吉滕德拉

4

2 回答 2

1

最后我发现了错误。

我认为,无法检索句柄是一个非常普遍的错误,可能由于多种原因而发生。一种可能是多次安装 Imagemagick。

我的错误是,未安装 JPEG 格式的委托库。所以我按照http://blog.ericlamb.net/2008/11/fix-for-convert-no-decode-delegate-for-this-image-format/上的说明首先安装这个库,然后重新安装 imagemagick。它解决了这个问题。

于 2011-04-05T13:25:02.243 回答
0

Google 似乎认为此错误与您的系统上有多个 ImageMagick 副本有关,并且在尝试检索处理程序时会感到困惑。我怀疑 JMagick 将 ImageMagick 打包到其中,这可能是重复的来源。

于 2011-03-31T14:14:47.207 回答