GATE嵌入式示例示例NoClassFound错误

时间:2013-11-18 11:31:25

标签: java gate

我是GATE Embedded的新手,我尝试了简单的示例并获得了NoClassDefFoundError。 首先,我将解释我尝试过的内容

  1. D:\ project \ gate-7.0
  2. 中添加和提取Gate 7.0
  3. Netbean创建新项目 - >添加了库gate.jar和lib文件夹
  4. 试图执行简单的java代码
  5. public static void main(String args[]) throws GateException, IOException 
     {
      // initialise the GATE library
      Out.prln("Initialising GATE...");
      Gate.init();
      Out.prln("...GATE initialised");
    }
    

    运行时获取错误

    Initialising GATE...
    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger
            at gate.Gate.<clinit>(Gate.java:83)
            at gatedemo.StandaloneDemo.main(StandaloneDemo.java:84)
    Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger
    

    我认为错误与classpath有关。

1 个答案:

答案 0 :(得分:3)

  

Netbean创建新项目 - &gt;添加了库gate.jar和lib文件夹

您需要应用程序的类路径来包含lib文件夹内的所有JAR文件,而不是文件夹本身。

请注意,一旦你解决了这个问题,你可能会收到一条警告,说GATE“无法初始化Log4J” - 为了避免这种情况,要么将GATE的bin目录添加到应用程序的类路径中,create your own log4j.properties项目的顶级src目录,或添加

org.apache.log4j.BasicConfigurator.configure();

位于main方法的顶部。

P.S。我还建议您使用更新的GATE(7.1或当前快照),除非您有特定原因必须使用旧版本。