【问题标题】:How to use jai-imageio in IntelliJ plugin如何在 IntelliJ 插件中使用 jai-imageio
【发布时间】:2015-04-16 06:06:59
【问题描述】:

我正在为 intelliJ 开发一个插件。

这需要使用 tesseract。当我将它作为控制台应用程序执行时,它工作正常。

但是当我尝试执行插件时,我得到以下异常,

SEVERE: Need to install JAI Image I/O package.
https://java.net/projects/jai-imageio/
java.lang.RuntimeException: Need to install JAI Image I/O package.
https://java.net/projects/jai-imageio/
    at net.sourceforge.vietocr.ImageIOHelper.getImageByteBuffer(ImageIOHelper.java:254)

在下面的语句中

 final TIFFImageWriteParam tiffWriteParam = new TIFFImageWriteParam(Locale.US);

        tiffWriteParam.setCompressionMode(ImageWriteParam.MODE_DISABLED);

        // Get tif writer and set output to file
        final Iterator<ImageWriter> writers =  ImageIO.getImageWritersByFormatName(TIFF_FORMAT);

        if (!writers.hasNext()) {
            throw new RuntimeException(JAI_IMAGE_WRITER_MESSAGE);
        }

ImageIO.getImageWritersByFormatName 返回 null

我可以将其作为控制台应用程序执行,但是当我尝试作为 intelliJ 的插件执行时,它会失败。

谁能指导如何在 IntelliJ 插件中使用 jai-image io。

问候, 湿婆NB

【问题讨论】:

    标签: java image-processing intellij-idea tesseract jai


    【解决方案1】:

    您的 Intellij 和控制台似乎有不同的类路径。 Intellij 版本无法读取 tiff 文件,因为缺少 java-imageio。您可以查看 here 来找到该 jar,或者查看控制台类路径中哪些 jar 是 intellij 缺少的可能更容易。

    编辑:更多细节。 java imageio lib 需要一个插件来读取 tiff 和 bmp 文件。该插件通常不与 lib 捆绑在一起。而且找到正确的罐子通常很痛苦。

    【讨论】:

      【解决方案2】:

      我们需要将 jai_codec.jar、jai_core.jar 和 jai_imageio.jar 添加到 jre 的 ext 文件夹中。

      作为插件创建时,类路径与控制台不同。

      我点击了以下链接, https://www.java.net/node/683477

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多