线程“main”中的异常java.lang.NoClassDefFoundError:DiServer <错误名称:=“”ds =“”diserver =“”> </错误>

时间:2011-01-07 14:36:43

标签: java eclipse

这是我害怕的非常令人尴尬的问题之一。

我在Eclipse中有一个程序:

    package ds;
    public class DiServer {
 public static void main(String[] args) {
    int foo = 0;
    int bar = 0;
    /*bla*/
    }
    }

简单吧?这在Eclipse中运行时完全正常。

我想从命令行运行它。我已经复制了bin文件夹,里面有ds文件夹,ds和.classpath

中有DiServer.class

我把它们放到一个单独的文件夹中,C:\ My Documents \ DiTest,打开命令提示符,转到C:\ My Documents \ DiTest \ ds \并输入java DiServer

我得到的错误是Exception in thread "main" java.lang.NoClassDefFoundError: DiServer <wrong name:ds/DiServer> ... Could not find the main class: DiServer. Program will exit.

我尝试过java -classpath。 DiServer,java -classpath ../ .. DiServer,将.classpath移动到ds文件夹,但我似乎无法绕过这个。我99%肯定这是一个类路径问题,但我无法弄清楚如何解决它。

我将永远感谢任何帮助,并且品脱的习惯性提供始终如一。

非常感谢,

中号

2 个答案:

答案 0 :(得分:24)

您的班级全名是ds.DiServer,而不是DiServer。来自C:\My Documents\DiTest

java -cp . ds.DiServer

voilà

答案 1 :(得分:11)

转到C:\My Documents\DiTest\ds\

javac  DiServer.java

转到C:\My Documents\DiTest\

java ds.DiServer 

另见