在 Tomcat 上使用 Tess4J
Posted
技术标签:
【中文标题】在 Tomcat 上使用 Tess4J【英文标题】:Using Tess4J on Tomcat 【发布时间】:2012-07-29 00:08:06 【问题描述】:当我使用 Tess4J 库时出现错误:
java.lang.NoClassDefFoundError: Could not initialize class net.sourceforge.tess4j.TessAPI
在运行时。
但我不明白这个错误的含义,也无法解决它。
我的问题是 Tess4J 必须加载 2 个本机 dll,但这不是我能控制的。我已将 dll 的位置添加到每个 jar 的构建路径中。
我注意到,当我第一次用我的客户端触发 Tess4J 时,我收到一个错误:
java.lang.UnsatisfiedLinkError: Unable to load library 'libtesseract302'
但每次连续调用都会导致NoClassDefFoundError
exception。
【问题讨论】:
【参考方案1】:在我的例子中,从 64 位 Java 切换到 32 位 Java 解决了 java.lang.UnsatisfiedLinkError: Unable to load library 'libtesseract302' 问题(Tesseract 是一个 32 位应用程序)。不要忘记将 libtesseract302.dll、liblept168.dll 和 tessdata 放入 jdk/bin 文件夹。
【讨论】:
感谢您的回复,但我已经这样做了。但我不确定将文件放在哪里。将它们复制到 jdk/bin 中,但这没有帮助。它对我来说是独立的,但我不知道如何在 tomcat 上使用 Tess4J。 找到了解决方案。我必须在相应的服务器设置中设置正确的 JVM,而不是为项目设置。我接受你的回答,因为它指向了正确的方向。 @SatelliteSD 我和你有同样的问题。您能否发布说明如何摆脱此错误? 为服务器和应用程序配置 JVM 为 32 位。 @SatelliteSD 我也有同样的问题,请问如何配置JVM?以上是关于在 Tomcat 上使用 Tess4J的主要内容,如果未能解决你的问题,请参考以下文章
在腾讯云买的服务器上部署了tomcat,在主机上输入IP:8080访问不了