netbeans 中的 libtesseract303.dll 问题

2024-02-11

我正在实施 OCR 系统。当我将 dll 文件放在 java 类路径上时,出现以下错误。

Exception in thread "main" java.lang.UnsatisfiedLinkError: G:\software\apache-tomcat-8.0.18-windows-x64\apache-tomcat-8.0.18\bin\win32-x86-64\libtesseract303.dll: Can't find dependent libraries

运行项目后,如果我检查 java 类路径,添加的所有 dll 文件都会消失。我几乎遵循了所有相关的教程tesseract。但找不到解决办法。有人有想法吗?

1).JDK版本- 1.8(64位) 2).库是64位的 3).所有三个库都放置在库路径中。 4)我按照本教程给出的步骤进行操作here http://tphangout.com/?p=18在本教程中,他们介绍了 32 位库。我使用的是 64 位库。我得到了以下错误java.lang.UnsatisfiedLinkError:无法加载库“libtesseract304”:在资源路径中找不到本机库(win32-x86-64/libtesseract303.dll)([file:/C:/Users/User/Documents/GitHub/Linguist/构建/网络/WEB-INF/类)。 然后我尝试检查是否可以使用 system.load() 加载库。然后我收到以下错误。我的类路径放置在tomcat文件夹中。

线程“main”中的异常java.lang.UnsatisfiedLinkError:G:\ software \ apache-tomcat-8.0.18-windows-x64 \ apache-tomcat-8.0.18 \ bin \ win32-x86-64 \ libtesseract303.dll:可以找不到依赖库


下面是一个小型的工作示例应用程序。从那里您可以开始调查并选择您需要的零件。

假设以下结构和文件

pom.xml
sample.gif
src/main/java/sub/optimal/tess4j/Demo.java
tessdata/eng.traineddata

pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>sub.optimal</groupId>
    <artifactId>Tess4JDemo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.shade.version>2.3</maven.shade.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>net.sourceforge.tess4j</groupId>
            <artifactId>tess4j</artifactId>
            <version>3.0.0</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>org.ghost4j</groupId>
            <artifactId>ghost4j</artifactId>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
            <version>${maven.shade.version}</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.4.0</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>java</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <mainClass>sub.optimal.tess4j.Demo</mainClass>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

样本.gif

src/main/java/sub/optimal/tess4j/Demo.java

package sub.optimal.tess4j;
import java.io.File;
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
public class Demo {
    public static void main(String[] args) {
        File imageFile = new File("sample.gif");
        Tesseract instance = new Tesseract();
        try {
            String result = instance.doOCR(imageFile);
            System.out.println(result);
        } catch (TesseractException e) {
            e.printStackTrace(System.err);
        }
    }
}

tessdata/eng.traineddata是从下载的https://tesseract-ocr.googlecode.com/files/eng.traineddata.gz https://tesseract-ocr.googlecode.com/files/eng.traineddata.gz(不要忘记解压文件)

运行这个小例子mvn exec:java产生以下输出

[INFO] --- exec-maven-plugin:1.4.0:java (default-cli) @ Tess4JDemo ---
Hello OCR!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

netbeans 中的 libtesseract303.dll 问题 的相关文章

  • NetBeans 可以在保存时删除尾随空格并将制表符更改为空格吗?

    我刚刚开始使用 NetBeans 并正在尝试找出如何 使其在保存时删除尾随空白 我知道你可以手动调用它 但如果你忘记了 那就很烦人了 可以在保存时自动完成吗 我希望这样做是因为它可以保持代码整洁 因为当您在代码中移动并且文本光标到处都是时
  • Selenium:将 Internet Explorer 中的文件下载到指定文件夹,无需直接链接,无需 Windows 窗体,无需 AutoIt 或 Robot

    我经常遇到一个问题 如何在 IE 中下载文件 与 Firefox 的 Chrome 不同 您不能只指定所需的文件夹 所有文件都会下载到该文件夹 您还需要与本机 Windows 表单等进行交互 有多种选项 例如使用 AutoIt 使用键盘命令
  • 将处理项目移至 Eclipse

    我已经在处理项目上工作了一段时间 现在想将其移至 Eclipse 中 我已经在 Eclipse 环境中安装了 Proclipse 我有很多扩展名为 pde 的文件 然而 Proclipse 文件都以 java 结尾 所有 pde 文件都存在
  • Java,顺序流在哪个线程中执行?

    在阅读有关流的文档时 我遇到了以下句子 attempting to access mutable state from behavioral parameters presents you with a bad choice if you
  • 了解 netty 通道缓冲区和水印

    我正在尝试了解网络缓冲区和水印 作为一个测试用例 我有一个 netty 服务器 它向客户端写入数据 客户端被阻止 基本上每次读取之间有 10 秒的睡眠时间 在正常 I O 下 如果接收方被阻塞 TCP 发送方将受到限制 由于流量控制 发送速
  • 如何准确判断 double 是否为整数? [复制]

    这个问题在这里已经有答案了 具体来说 在 Java 中 我如何确定double是一个整数 为了澄清 我想知道如何确定 double 实际上不包含任何分数或小数 我主要关心的是浮点数的性质 我想到的方法 以及我通过谷歌找到的方法 基本上遵循以
  • Selenium 和 TestNG 同时使用“dependsOn”和“priority =”问题

    我正在努力在 GUI 自动化测试中实现更好的工作流程控制 我首先从dependsOn开始 但很快发现缺点是如果一个测试失败 则套件的整个其余部分都不会运行 所以我改用 priority 但看到了意外的行为 一个例子 Test priorit
  • Java Junit 测试 HTTP POST 请求

    我需要测试以下方法而不改变方法本身 该方法向服务器发出 POST 方法 但我需要制作一个独立于服务器的测试用例 在将其重定向到本地文件之前 我测试了类似的方法 但为此我将协议指定为文件 主机名指定为 localhost 端口指定为 1 我的
  • Maven WebApp META-INF context.xml

    我正在使用 Maven 3 并且尝试在 webapp 文件夹下添加 META INF 文件夹 所以我正在尝试执行以下操作 src main webapp META INF context xml WEB INF 下面是我的 POM 文件
  • java项目中无法加载类“org.slf4j.impl.StaticLoggerBinder”错误? [复制]

    这个问题在这里已经有答案了 我越来越Failed to load class org slf4j impl StaticLoggerBinder 错误 我想将记录器写入文件 所以我使用了 log4j jar 并使用 apache tomca
  • 绘制平滑曲线

    我想创建更平滑的曲线 而不仅仅是线角 这是我现在画的图 这是我的代码 case FREEHAND float pts float ptk ptk new float 2 imageMatrix invert inv if mCurrentS
  • 但是创建静态实用方法不应该被过度使用吗?如何避免呢? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 随着时间的推移 java项目中引入了许多实用方法来完成更复杂和简单的任务 当使用静态方法时 我们在代码中引入了紧密耦合 这使得我们的代
  • 从 CLI 部署 Maven 项目?

    在 IDE 中构建并运行良好 cd home thufir NetBeansProjects HelloMaven JAVA HOME usr lib jvm java 8 openjdk amd64 home thufir local s
  • Java HashSet 是线程安全的只读吗?

    如果我通过 Collections unmodifyingSet 运行 HashSet 实例后 它是线程安全的吗 我问这个是因为 Set 文档声明它不是 但我只是执行读取操作 来自 Javadoc 请注意 此实现不是同步的 如果多个线程同时
  • JPA Web 应用程序管理策略

    我们目前正在开发一个 J2EE Web 应用程序 使用 JPA 作为我们的数据访问层 我们目前正在研究几种不同的策略来在我们的应用程序中利用缓存 Create an EntityManager per request 在请求范围内获取缓存
  • java.lang.UnsatisfiedLinkError - android studio gradle 中的 NDK?

    文件夹结构 app main java jni Android mk Application mk hello jni c res 在构建 gradle apply plugin com android application androi
  • 为什么 java.util.Arraylist#clear 按照 OpenJDK 中的方式实现?

    http grepcode com file repository grepcode com java root jdk openjdk 6 b14 java util ArrayList java 473 http grepcode co
  • 检查按钮是否可用?如果没有,请等待 5 秒钟,然后再次检查?

    基本上我想看看此刻是否可以单击按钮 如果没有我想再试一次 所以我需要某种 goto 函数来返回到代码的前一行 尽管我怀疑我写得非常糟糕 但它本来可以做得更容易 try driver findElement By xpath button i
  • Java时区混乱

    我正在运行 Tomcat 应用程序 并且需要显示一些时间值 不幸的是 时间快到了 还有一个小时的休息时间 我调查了一下 发现我的默认时区被设置为 sun util calendar ZoneInfo id GMT 08 00 offset
  • 如何在J2ME中获取数字的幂[重复]

    这个问题在这里已经有答案了 可能的重复 J2ME power double double 数学函数实现 https stackoverflow com questions 2076913 j2me powerdouble double ma

随机推荐

  • 如何使用 pandas 根据多个字符串索引拆分列

    我想根据几个索引将每一行拆分为新列 6ABCDE0218594STRING to 6 ABCDE 021 8594 STRING 这似乎以前至少被问过一次 但我一直只找到问题的变体 用分隔符分隔 如pandas 如何将一列中的文本拆分为多行
  • 带有内嵌图像的 JEditorPane

    我正在尝试在 Java JEditorPane 中显示内联图像 下面的代码使用的 HTML 内容可以在 Firefox 中正确显示图像 但不能在 JEditorPane 中显示 有什么想法吗 谢谢 import javax swing im
  • Python索引错误值不在列表中...on .index(value)

    我是Python的初学者 对于那些对我的帖子持负面想法的人 请离开 我只是在这里寻求帮助并尝试学习 我正在尝试在一个简单的数据集中检查 0 和 1 这将用于在平面图上定义空隙和实体 以定义建筑物中的区域 最终 0 和 1 将被坐标替换 我收
  • 在元素的父元素之后插入

    在下面的示例中 我需要什么样的选择器才能插入 test3 类的父级 divouter 之后 谢谢 div class divouter div class divinner div div
  • 如何在浏览器中使用模块,同时也引用 DevTools 中的变量和函数?

    我的 HTML 设置如下 所有 ES6 模块都工作正常 唯一的问题是我现在无法引用 DevTools 中的任何内容 例如使用控制台并输入变量以查看其值或手动使用函数 如何在能够使用 DevTools 的同时导入模块 谢谢 在 DevTool
  • Maven2:如何确定 Maven 构建正在使用特定的插件版本?

    我刚刚发现 Maven 插件管理听起来很奇怪 在进行网站生成时 我想使用特定版本的 Maven 网站插件 以便实现特定的功能 假设我想使用这个插件的 2 0 1 版本 如果我使用 POM 的报告部分来使用以下命令生成项目站点 mvn sit
  • Phonegap 软键盘覆盖输入字段[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我的 Phonegap 3 1 中的软键盘覆盖了我的 Android 4 x 中的输入字段 这个问题一直很烦人 我刚才差点就发帖问了 但突然
  • 是否可以将react-datepicker与react hooks表单一起使用?

    是否可以将react datepicker与react hooks表单一起使用 我尝试了以下示例 但没有运气 import React useState from react import styles css import useForm
  • 将字符串解析为 DirectoryInfo 的正确方法? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在开发一个程序 为了避免复杂化 我需要将给定的字符串变量解析为 DirectoryInfo 我想知道是否可以将字符串解析为 Direc
  • 如何制作骨头形状的纽扣

    我目前正在为我的网站试验一个按钮 我希望它看起来像一个普通按钮 但是一旦你将其悬停 它就会变成一根骨头 我的网站是关于狗的 所以我使用了一个已经存在的 codepen 项目 最终得到了这个 root bg 1a1e24 color eee
  • 使用 jQuery 重复元素

    我确信这对于正确的人来说是显而易见的 但是如何使用 jQuery 重复一个元素呢 本质上 我希望 jQuery 无限次重复内联元素 就像您使用 CSS 来重复背景纹理的图形一样 我一直在研究 clone 和 each 但确实可以使用一些指针
  • AngularJS:指令隔离范围 - 范围变量未定义

    请有人能给我解释一下为什么吗attrDir的范围变量是可见的 并且oneWay不是吗 我以为scope 也是孤立的 angular module test angular module test directive attrDir attr
  • 访问项目资源中的图像?

    如何在运行时访问已添加到项目资源中的图像 我希望能够做这样的事情 if value picBox1 image Resources imageA else picBox2 image Resources imageB Something I
  • MongoDB toArray 性能

    我正在尝试从 Mongo Node 中的术语集合构建类别树 但首先我使用 in 选择所有树元素 console time termsCol find var terms await termsCol find term id in flat
  • gitlab API有速率限制吗

    github对OAuth客户端的速率限制为5000 小时 但我找不到相同的信息gitlab 除了创建新用户和重置密码6次 分钟 是否意味着没有限制 答案是不再是 不 https gitlab com gitlab org gitlab ru
  • iceConnectionState 已断开连接(通过互联网使用时)

    这个问题以前曾被问过 但我还没有找到答案 我基本上遇到了与描述相同的问题here https stackoverflow com questions 34405816 peerjs webrtc iceconnectionstate fai
  • 使用 openCV 从图像中读取数字和字母

    我正在开发一个应用程序 使用 c 中的 opencv 读取图像中的字母和数字 我首先将给定的彩色图像和颜色模板更改为二值图像 然后调用方法cvMatchTemplate 这个方法只是突出显示了模板匹配的区域 但不清楚 我只是不想看到该区域
  • 如何保留从常规终端到 gnu 屏幕的 emacs 颜色

    作为记录 我使用的是 OSX 雪豹 当我直接从终端使用 emacs 时 我有一个我非常满意的颜色集 例如 用于 c c 黑底绿 红色注释 彩色关键字 等等 其中一些是在我的 终端首选项 中设置 有些位于我的 emacs 文件中 见下文 当我
  • JFreeChart 链接轴

    我创建了一个带有两个独立 JFree 图表的框架 以 2x1 网格布局保存 顶部图表显示 Canlestick 图表 底部图表显示时间序列图 我想要做的是链接两个图表显示的 X 轴 以便当我放大一个图表时 另一个图表会缩放到相应的时间段 这
  • netbeans 中的 libtesseract303.dll 问题

    我正在实施 OCR 系统 当我将 dll 文件放在 java 类路径上时 出现以下错误 Exception in thread main java lang UnsatisfiedLinkError G software apache to