java - 如何在 IntelliJ 插件中使用 jai-imageio

标签 java image-processing intellij-idea tesseract jai

我正在开发一个 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

最佳答案

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

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

关于java - 如何在 IntelliJ 插件中使用 jai-imageio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28529414/

相关文章:

android - Proguard 在 Intellij Idea 中是如何工作的?

java - 如何扩展字节缓冲区的分配内存

image-processing - 图像校正

PHP 5.5 $_POST 数组为空

grails - Grails 2.3.7 Intellij Scaffold不会创建list.gsp

python - Scikit 图像颜色过滤和将图像的部分更改为数组

java - Java 7 中过滤和返回对象的优化方式

java - 使用 SGD 微调神经网络进行数字识别时遇到问题。测试数据上我似乎无法获得超过 87% 的成绩

java - 无法从一个 Controller 重定向到另一个 Controller -Spring MVC

performance - MATLAB/ Octave : cut a lot of circles from a image