在Mac上从.jar运行时,出现Tess4J NoClassDefFoundError

时间:2019-02-05 18:37:11

标签: java macos jar tesseract tess4j

我使用Homebrew安装了Tesseract,然后编写了一个使用Tess4J进行字符识别的Java程序。通过pom.xml中的以下项,使用Maven管理Tess4J依赖项:

<dependency>
    <groupId>net.sourceforge.tess4j</groupId>
    <artifactId>tess4j</artifactId>
    <version>4.3.1</version>
</dependency>

该程序从命令行运行时可以正常运行,但是打包并以.jar文件运行时会崩溃:

Exception in thread "main" java.lang.NoClassDefFoundError: net/sourceforge/tess4j/Tesseract
...
Caused by: java.lang.ClassNotFoundException: net.sourceforge.tess4j.Tesseract
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)

我怀疑这可能是this previous question的重复,但是这个问题的答案不足以真正帮助我。例如,我没有“ Tess4J下载”(由Maven管理),我也不确定如何在项目中包括“整个文件夹作为依赖项”。

有任何想法如何使Tess4J在Mac上的.jar应用程序中工作?

0 个答案:

没有答案