【问题标题】:How to run this project as a jar file?如何将此项目作为 jar 文件运行?
【发布时间】:2018-12-05 23:19:06
【问题描述】:

你能从这个项目中创建一个没有初始化错误的 jar 文件吗?

项目在这里。 https://github.com/piersy/BasicTesseractExample

我尝试使用 jarsplice 将项目 jar 与 tesseract 和 javacpp jar 拼接起来,但在命令提示符下运行 jar 时出现此初始化程序错误。我不知道是否需要 jarsplice,但那是我的努力。

C:\Users\user\Desktop\JavaWorkspace>java -jar fatOCR.jar Exception in thread "main" java.lang.ExceptionInInitializerError
        at BasicTesseractExampleTest.givenTessBaseApi_whenImageOcrd_thenTextDisplayed(BasicTesseractExampleTest.java:14)
        at runOCR.main(runOCR.java:7) Caused by: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy
        at java.base/sun.reflect.annotation.AnnotationParser.parseClassArray(Unknown Source)
        at java.base/sun.reflect.annotation.AnnotationParser.parseArray(Unknown Source)
        at java.base/sun.reflect.annotation.AnnotationParser.parseMemberValue(Unknown Source)
        at java.base/sun.reflect.annotation.AnnotationParser.parseAnnotation2(Unknown Source)
        at java.base/sun.reflect.annotation.AnnotationParser.parseAnnotations2(Unknown Source)
        at java.base/sun.reflect.annotation.AnnotationParser.parseAnnotations(Unknown Source)
        at java.base/java.lang.Class.createAnnotationData(Unknown Source)
        at java.base/java.lang.Class.annotationData(Unknown Source)
        at java.base/java.lang.Class.createAnnotationData(Unknown Source)
        at java.base/java.lang.Class.annotationData(Unknown Source)
        at java.base/java.lang.Class.getAnnotation(Unknown Source)
        at java.base/java.lang.reflect.AnnotatedElement.isAnnotationPresent(Unknown Source)
        at java.base/java.lang.Class.isAnnotationPresent(Unknown Source)
        at org.bytedeco.javacpp.ClassProperties.load(ClassProperties.java:128)
        at org.bytedeco.javacpp.Loader.loadProperties(Loader.java:203)
        at org.bytedeco.javacpp.Loader.load(Loader.java:372)
        at org.bytedeco.javacpp.Loader.load(Loader.java:354)
        at org.bytedeco.javacpp.tesseract$TessBaseAPI.<clinit>(tesseract.java:3422)
        ... 2 more

【问题讨论】:

    标签: java jar javacpp


    【解决方案1】:

    我认为你不能运行这个项目,因为它只包含测试(在这种情况下是 1 个测试)并且不包含 main 方法。

    【讨论】:

    • 好的,我链接了那个初始项目,因为它更容易。我已经尝试了主要方法,这就是我遇到该命令提示符错误的方式。谢谢。
    猜你喜欢
    • 2018-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-02
    • 1970-01-01
    • 1970-01-01
    • 2016-07-20
    • 2012-04-15
    相关资源
    最近更新 更多