2011-10-29 156 views
1

我在Unix机器上使用Eclipse 3.5。我试图执行一个简单的(虚拟)JUnit。我正在使用JUnit 4框架来撰写Junit测试用例。Eclipse中的Junit测试引发异常

而且,我已经添加的Junit 4.10.jar到项目的构建路径

这是我的Java类文件: FileStats.java

package entity; 
    public class FileStats { 
      public int getAllStats(){ 
       return 1; 
      } 
    } 

FileStatsTest.java

package entity; 
    import static org.junit.Assert.*; 
    import org.junit.Test; 
    public class FileStatsTest { 
     @Test 
     public void testGetAllStats() { 
      assertEquals("its equal",1,new FileStats().getAllStats()); 
     } 
    } 

在执行测试用例时,出现以下错误:

Exception in thread "main" java.lang.ClassFormatError: Truncated class file 
     at java.lang.ClassLoader.defineClass1(Native Method) 
     at java.lang.ClassLoader.defineClass(ClassLoader.java:621) 
     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) 
     at java.net.URLClassLoader.defineClass(URLClassLoader.java:260) 
     at java.net.URLClassLoader.access$000(URLClassLoader.java:56) 
     at java.net.URLClassLoader$1.run(URLClassLoader.java:195) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(URLClassLoader.java:188) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:307) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 
     at java.lang.ClassLoader.loadClass(ClassLoader.java:252) 
     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) 
    Could not find the main class: org.ecli  pse.jdt.internal.junit.runner.RemoteTestRunner. Program will exit. 

我已经搜索并尝试重新启动,清理构建路径等,但无法让它工作。任何可能丢失的建议都会非常有用。

谢谢。

回答

2

它看起来像你有一个损坏的安装。尝试使用全新的Eclipse安装,或者重新安装junit插件(而不是junit jar)。