在 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'

但每次连续调用都会导致NoClassDefFoundErrorexception。

【问题讨论】:

【参考方案1】:

在我的例子中,从 64 位 Java 切换到 32 位 Java 解决了 java.lang.UnsatisfiedLinkError: Unable to load library 'libtesseract302' 问题(Tesseract 是一个 32 位应用程序)。不要忘记将 libtesseract302.dllliblept168.dlltessdata 放入 jdk/bin 文件夹

【讨论】:

感谢您的回复,但我已经这样做了。但我不确定将文件放在哪里。将它们复制到 jdk/bin 中,但这没有帮助。它对我来说是独立的,但我不知道如何在 tomcat 上使用 Tess4J。 找到了解决方案。我必须在相应的服务器设置中设置正确的 JVM,而不是为项目设置。我接受你的回答,因为它指向了正确的方向。 @SatelliteSD 我和你有同样的问题。您能否发布说明如何摆脱此错误? 为服务器和应用程序配置 JVM 为 32 位。 @SatelliteSD 我也有同样的问题,请问如何配置JVM?

以上是关于在 Tomcat 上使用 Tess4J的主要内容,如果未能解决你的问题,请参考以下文章

如何在Tomcat上安装和使用CDI?

如何在远程Tomcat上部署war

在Tomcat上部署war文件

在腾讯云买的服务器上部署了tomcat,在主机上输入IP:8080访问不了

如何使用 Tomcat 在 Geoserver 上提供 https?

Tomcat卸载使用控制面板 - Tomcat服务未删除