【问题标题】:Java Gate embedded嵌入式 Java 门
【发布时间】:2017-01-07 15:39:50
【问题描述】:

我正在尝试使用 Gate Embedded 来提取一些实体。 我包含了来自的 jar 文件 bin 和 lib 文件夹 这是代码:

    Out.prln("Initialising GATE...");
    Properties props = System.getProperties();
    props.setProperty("gate.home", "/Applications/GATE_Developer_8.2");
    SwingUtilities.invokeAndWait(new Runnable() { 
        public void run() {
            MainFrame.getInstance().setVisible(true);
            try {
                Factory.newDocument("This is a document");
            } catch (ResourceInstantiationException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();

但我总是遇到以下异常。有谁知道我做错了什么?谢谢

Exception in thread "main" java.lang.reflect.InvocationTargetException
    at java.awt.EventQueue.invokeAndWait(EventQueue.java:1312)
    at java.awt.EventQueue.invokeAndWait(EventQueue.java:1287)
    at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1348)
    at gate.Gate.main(Gate.java:25)
Caused by: java.lang.NoSuchMethodError: gate.Gate.getUserConfig()Lgate/util/OptionsMap;
    at gate.swing.XJFileChooser.getLocations(XJFileChooser.java:140)
    at gate.swing.XJFileChooser.<init>(XJFileChooser.java:70)
    at gate.gui.MainFrame.<init>(MainFrame.java:493)
    at gate.gui.MainFrame.getInstance(MainFrame.java:352)
    at gate.gui.MainFrame.getInstance(MainFrame.java:348)
    at gate.Gate$1.run(Gate.java:27)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:301)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:749)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:702)
    at java.awt.EventQueue$3.run(EventQueue.java:696)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:719)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

【问题讨论】:

  • 你的主类的名字和包是什么?是gate.Gate 吗?

标签: java gate


【解决方案1】:

您遇到此错误是因为该类位于类路径中,但其版本与您的需要不匹配。已找到该类,但您调用的方法在该类的版本中不存在。

我认为您应该使用更新版本的 GATE 库。

例如这个版本https://gate.ac.uk/releases/gate-3.1-build2270-ALL/doc/javadoc/包含the gate.Gate类提供公共方法OptionsMap getUserConfig()

【讨论】:

  • 你的第一段是正确的,但我认为GATE库的版本还可以。看我的回答...
【解决方案2】:

查看堆栈跟踪时,我认为您的主类名为gate.Gate - 与 GATE 库的中心类同名。而这种名称冲突会导致问题。

只需重命名您的类或更改其包,错误就会消失。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-04
    • 1970-01-01
    相关资源
    最近更新 更多