现在我在D盘的根目录下新建一个简单的java文件.helloworld.java
package helloworld;public class a
{
public void main(String[] args)
{
System.out.println("Hello,World");
}
}
我在控制台下进入d盘:
javac -d . helloworld.java编译后生成helloworld文件夹,helloworld中有helloworld.class文件
java helloworld
提示错误:
Exception in thread "main" java.lang.NoClassDefFounfError:helloworld(Wrong name helloworld/helloworld)是不是我的JDK环境变量配置有问题 啊?

解决方案 »

  1.   

    helloworld.java文件内容,上面贴错了!!!package helloworld; public class helloworld

        public void main(String[] args) 
        { 
            System.out.println("Hello,World"); 
        } 

      

  2.   

    public class a声明为pulic的类,必须与文件名保持一致,
    package的名字是目录名。这是java最最基本的概念啊,随便看本书都要提到这个的,怎么回事儿?
      

  3.   

    肯定不是环境变量的问题,因为Javac.EXE和JAVA.EXE都在文件夹BIN里面,能生成helloworld.class,那么环境变量肯定没问题,你在void前加上static试试吧。应该就没问题了。
      

  4.   

    你的main函数应该是:
     public static void main(String[] args) 
        { 
            System.out.println("Hello,World"); 
        } 吧?
    少了static,所以运行时找不到main入口啊!
      

  5.   

    入口函数需有用静态的修饰符static,不然会倒至无法找到类的内容。
    public static void main(String[] args){
    }
      

  6.   

    的确是基础问题....因为你用了package ,所以你直接java helloworld是错误的...
    你应该加上包名 java helloworld.helloworld 顺便说一句...类名应该采用驼峰式写法...第一个字母大写...
      

  7.   

    main 中加了static 还是不行?