我使用tess4j技术实现图片识别,但是运行之中报错不知道该如何解决。
代码:
public class TestOcr {
public static void main(String[] args) {
System.out.print("please input image path:");
Scanner scanner = new Scanner(System.in);
String path = scanner.nextLine();
File file = new File(path);
if(!file.exists()) {
System.err.println("file not exist!");
scanner.close();
return;
}
System.out.print("please setLanguage(eng/chi_sim):");
String language = scanner.nextLine();
scanner.close();
if(!("chi_sim".equals(language) || "eng".equals(language))) {
System.err.println("language must be chi_sim or eng!");
return;
}
ITesseract instance = new Tesseract();
instance.setDatapath("D:\\software\\tools\\tessdata\\tessdata\\tessdata-main"); // 语言库位置
instance.setLanguage(language);// chi_sim:简体中文,eng:英文
String result = null;
try {
result = instance.doOCR(file);
} catch (TesseractException e) {
e.printStackTrace();
}
System.out.println("result: ");
System.out.println(result);
}
}
报错信息:
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/jna/Pointer
at TestOcr.main(TestOcr.java:28)
Caused by: java.lang.ClassNotFoundException: com.sun.jna.Pointer
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:602)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
. 1 more
定义类时所需要的字节码在类装入器所查找的位置上不存在。28行 new这里面是啥