我尝试配置NetBeans(7.2)项目以使用Tess4J库。 不幸的是,我得到的只是运行时错误:
Exception in thread "main"
java.lang.NoClassDefFoundError:
com/sun/media/imageio/plugins/tiff/TIFFImageWriteParam
at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:166)
经过一段时间的测试和尝试后,我在Eclipse中创建了一个简单的Tess4J项目,一切正常,但我不想将整个项目转换为eclipse。 两个项目都以相同的方式配置,但NetBeans因某些原因拒绝工作。
我在StackOverflow上找到了一个可能的解决方案,将libtesseract302.dll,liblept168.dll和tessdata放在jdk / bin文件夹而不是项目文件夹中,但我没有管理员权限,所以这是不可能的。
还有其他方法可以让Tess4J在NetBeans中运行吗?
答案 0 :(得分:2)
我在tomcat的windows版本下也遇到了同样的问题。
线程中的异常" main" java.lang.NoClassDefFoundError:net / sourceforge / tess4j / Tesseract
以及
无法加载库&libtesseract302'问题(Tesseract是一个32位应用程序)。
我通过将liblept168.dll和libtesseract302.dll添加到C:\ Program Files \ Apache Software Foundation \ apache-tomcat-7.0.37 \ bin(安装tomcat的二进制文件)并通过链接jar或者来解决它源代码由Tess4j提供给我的项目。
无论如何,在Linux下,只有引用Tess4j项目(并且安装了Leptonica并且数据文件位于正确的位置),一切都很顺利。
希望这有帮助,尽情享受;)
答案 1 :(得分:1)
Tess4J本身就是一个NetBeans项目。您只需要打开项目,花费测试包,并执行包含的单元测试 - 无需在任何地方复制文件。