请问我运行如下程序时会出java.lang.NoClassDefFoundError: HelloWorld (wrong name: test/HelloWorld)错误:package test;
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello World");
}
}
.java和.class文件都在C:\test目录下,C:\也已经加入了CLASSPATH,为什么运行会出错呢?

解决方案 »

  1.   

    如何运行的?
    java test/HelloWorld??
    进入test目录
    java HelloWorld
      

  2.   

    搞个IDE吧  eclipse或者netbeans
      

  3.   

    进入test目录
    java HelloWorld 不行直接java test/HelloWorld 确能运行,而且奇怪的还不能用windows的反斜杠 请问这是为什么啊
      

  4.   

    正确做法,在C:\下键入:java test.HelloWorld然后回车,也就是在包的最顶层,键入类的全限定名(也就是包名.类名),当然java test/HelloWorld也是可以的,但那不是标准的,我也不知道为什么可以这样,我也试过可以,不过我是在Linux下试的,windows下没试过,不知道\行不行。但windows是支持/的.
      

  5.   

    cd test
    包其实不过是个文件夹,进入到里面以后编译运行,HelloWorld!
      

  6.   

    cd test
    包其实不过是个文件夹,进入到里面以后编译运行,HelloWorld!我试了,这样是不行的
      

  7.   

    直接c目录:
    C:\>javac test\HelloWorld.java
    C:\>java test.HelloWorldps: 不推荐刚开始学java就ide,虽然免于一些烦琐的配置,但是还是打好基础比较好。
      

  8.   

    因为你打了个包,所以这个类的完整的名应该是test.HelloWorld,当然在test中输入java HelloWorld是找不到这个类的,在test中输入java test.HelloWorld也是找不到的,因为test文件夹中没有test子文件夹,正确做法是在test文件夹外,用java test.HelloWorld就可以找到这个类了。
      

  9.   

    你们的都不行,还是看我的:
    编译:javac -d . HelloWorld.java
    运行:java test.HelloWorld