Java getImageWritersByFormatName未提供正确的值

Java getImageWritersByFormatName未提供正确的值,java,native,ocr,tesseract,jai,Java,Native,Ocr,Tesseract,Jai,net.sourceforge.tess4j.TesseractException:java.lang.RuntimeException 需要安装JAI映像I/O包。由于hasNext而引发异常 同样的web应用程序可以在我的mac电脑上运行,但不能在ubuntu电脑上运行。我正在使用tomcat服务器。有什么帮助吗?谢谢!我自己发现了错误。。我必须在tomcat/bin/setenv.sh中将jai_imageio.jar文件的类路径设置为TIFF_FORMAT==TIFF?只是检查一下…:-

net.sourceforge.tess4j.TesseractException:java.lang.RuntimeException

需要安装JAI映像I/O包。由于hasNext而引发异常


同样的web应用程序可以在我的mac电脑上运行,但不能在ubuntu电脑上运行。我正在使用tomcat服务器。有什么帮助吗?

谢谢!我自己发现了错误。。我必须在tomcat/bin/setenv.sh中将jai_imageio.jar文件的类路径设置为TIFF_FORMAT==TIFF?只是检查一下…:-这很可能是JAI安装问题。要么它根本不在那里,要么你的Tomcat和/或web应用程序没有接收到它。您是否安装到JRE的ext/lib文件夹或Tomcat的shared/lib或common/lib文件夹?是的,TIFF\u FORMAT=TIFF和JAI\u IMAGE\u WRITER\u MESSAGE=需要安装JAI IMAGE I/O包。。我在tomcat_home/lib文件夹中有libs,考虑到最近的一个tomcat,它似乎是正确的位置。如果ImageIO是在Tomcat添加其共享类加载器之前以某种方式初始化的,您可以尝试添加ImageIO.scanForPlugins调用(通常来自ContextListener或类似的调用),以使lib文件夹中的jar可用。如果这没有帮助,我会检查JAR文件的内容,以验证它们是否正确。谢谢!我自己发现了错误。。我必须在tomcat/bin/setenv.shGood中设置类路径。你应该把它作为答案贴出来-
Iterator<ImageWriter> writers = ImageIO.getImageWritersByFormatName(TIFF_FORMAT); 
if (!writers.hasNext()) {
    throw new RuntimeException(JAI_IMAGE_WRITER_MESSAGE);
}