2012-06-11 3 views
1

게이트에 새로 추가 할 수 없습니다. 실제로는 자바와 이클립스에도 오래되지 않았습니다.) 설정의 첫 번째 테스트를 실행하고 싶습니다. C에게이트 설정 : 공식 TestGate.java는

  1. 다운로드 게이트-7.0-build4195-ALL과 압축을 해제 :

    은 내가 한 일을

  2. 변화가 변수 CLASSPATH "에를 환경 \; % JAVA_HOME % \ lib 디렉토리;. C : \ gate-7.0-build4195-ALL \ lib "

  3. 새 Java 프로젝트를 만들었습니다 (% JAVA_HOME % \ lib \ tools.jar). 그리고 gate.jar \ gate \ TestGate.class로 이동하여 실행하십시오.

    Failed to invoke suite(): java.lang.NoClassDefFoundError: org/apache/log4j/Logger 
    java.lang.reflect.InvocationTargetException 
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
        at java.lang.reflect.Method.invoke(Unknown Source) 
        at  org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestLoader.getTest(JUnit3TestLoader.java:108) 
        at  org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestLoader.loadTests(JUnit3TestLoader.java:59) 
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452) 
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) 
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) 
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) 
    Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Logger 
        at gate.Gate.<clinit>(Gate.java:83) 
        at gate.TestGate.suite(TestGate.java:126) 
        ... 10 more 
    Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger 
        at java.net.URLClassLoader$1.run(Unknown Source) 
        at java.net.URLClassLoader$1.run(Unknown Source) 
        at java.security.AccessController.doPrivileged(Native Method) 
        at java.net.URLClassLoader.findClass(Unknown Source) 
        at java.lang.ClassLoader.loadClass(Unknown Source) 
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
        at java.lang.ClassLoader.loadClass(Unknown Source) 
        ... 12 more 
    

    내가 뭔가를 그리워 않았다

후 나는 다음과 같은 오류가 발생합니다?
감사합니다.

답변

1

CLASSPATH 환경 변수를 설정하지 마십시오. Eclipse 프로젝트에서 JAR 파일을 사용하려면 프로젝트의 빌드 경로에 JAR 파일을 추가해야한다.

GATE의 경우 특별히 bin/gate.jar 및 모든 JAR 파일이 lib이지만 필요한 경우 빌드 경로에 lib 디렉토리가 필요하지 않습니다.

+0

나는 Gate의 사이트에서 지시를 따랐다. 그러나 그것은 당신이 말했던 것처럼 메인 클래스를 찾거나로드 할 수 없다고 말합니다. – Matt

+0

또한 테스트 스위트가'build.xml' ('test.gate' 타겟)에서 어떻게 정상적으로 실행되는지 살펴 보길 바란다. 제대로 실행되기 위해서는 몇 가지 시스템 속성의 존재에 의존하고 아마도 실패 할 것이다. 그들은 설정되지 않습니다. –

+0

하지만 전반적으로 테스트 슈트를 실행할 수있는 것은별로 없지만 http://gate.ac.uk/wiki/training의 트랙 2 교육 자료를 살펴 보는 것이 더 좋은 방법입니다. -materials-2011.html, 특히 API 5로 프로그래밍을 시작하고 자신의 리소스를 작성하도록 고안된 모듈 5와 7. –

0

netbeans와 함께 java에서 GATE API를 사용하고 있는데 junit과 테스트를 통합했을 때 그 오류가있었습니다. 트릭은 doint를 사용하지 않고 프로젝트를 빌드하는 것입니다. 일단 빌드되면 GATE를 사용하여 정상적으로 테스트를 실행할 수 있습니다.

예를 들어 내가 내 테스트 FUNC의 시작 부분에이 문제를 가지고있다 :

@Test 
public void test() 
{ 
     if(false) 
     { 
      assertEquals(true, true); 
      return; 
     } 

     ... 
     Testing GATE 

당신이 유일하고 진정한 overthere로 설정해야합니다, 테스트없이 단지를 구축하기 위해. 그것은 GATE에서 사용하는 항아리의 classpath에 관한 것으로 보입니다.