Похоже на заголовок, это ошибка, связанная с Java opencv и tesseract, которая возникает только тогда, когда приложение запускается на другом компьютере.String openCVPath = new File("libs/opencv/opencv_java451.dll").getAbsolutePath();
tessDataFolder = new File("tessdata");
System.load(openCVPath);
< /code>
Моя функция отвечает за поиск или обнаружение текста в изображении. Он использует технологию OCR (оптическое распознавание символов), вероятно, посредством Tesseract, для идентификации и извлечения контента с читаемым текстом из визуального ввода. < /P>
public static int[] searchText(String[] textSearch){
try {
File imageFile = new File("screenshot.png");
BufferedImage image = ImageIO.read(imageFile);
Tesseract tesseract = new Tesseract();
File tessDataFolder = LoadLibs.extractTessResources("tessdata");
tesseract.setDatapath(tessDataFolder.getAbsolutePath());
tesseract.setLanguage("eng");
List words = tesseract.getWords(image, ITessAPI.TessPageIteratorLevel.RIL_TEXTLINE);
//logic search
} catch (Exception e) {
LogManager.out("Lỗi search text");
e.printStackTrace();
}
< /code>
Он функционировал должным образом на моем компьютере во время разработки и тестирования. Однако после того, как я построил проект и перенес его на другую машину для использования, он начал испытывать проблемы и не работал, как и ожидалось. < /P>
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at javafx.fxml/javafx.fxml.FXMLLoader$MethodHandler.invoke(FXMLLoader.java:1857)
at javafx.fxml/javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(FXMLLoader.java:1724)
at javafx.base/com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
Подробнее здесь: https://stackoverflow.com/questions/796 ... n-other-pc