我的程序是:
class A { public static void main (String[] args) { System.out.println ("Hello World! "); } }
编译成A.class时没有错误,但是在执行“java A”时出现提示:
Exception in thread "main" java.lang.NoClassdefDoundError: A
我的JDK目录和A.java、A.class的目录都在系统环境变量中声明了,请问出现这个错误是什么原因?我在JDK1.5.0和1.4.2下调试,都是这个结果。我是java 初学者,请前辈不吝赐教!
----------------解决方案--------------------------------------------------------
你在 class A 前加上一个访问权限看看 public 是定义一个公有的类
----------------解决方案--------------------------------------------------------
应在前面 加
import java.lang.*;
----------------解决方案--------------------------------------------------------
程序没有错误呀。
类名设为A,系统会自动加入public
而且import java.lang.*; 也是自动导入的。
所以,上面两个都不需要加入
但是具体为什么出错。。。我也不知道。。。呵呵
----------------解决方案--------------------------------------------------------
3楼的
----------------解决方案--------------------------------------------------------
没有错.
----------------解决方案--------------------------------------------------------
这题出错原因是定义的类名与保存的JAVA原文件名不同导致的。如上定义类class A{......} 编完后保存文件名应该为A.java,否则就会提示:
Exception in thread "main" java.lang.NoClassdefDoundError: A
----------------解决方案--------------------------------------------------------
可是就算是文件名和类名一样也会有这样的错误的,我试过的。
----------------解决方案--------------------------------------------------------
那你测试一下JDK编译环境是否配置正确?试试java ,javac命令是否成功?
----------------解决方案--------------------------------------------------------
D:\j2sdk1.4.0-rc\sysky>javac A.java D:\j2sdk1.4.0-rc\sysky>java A Hello World!
D:\j2sdk1.4.0-rc\sysky> 这是楼主自己的程序,我只是运行了一下!估计是你的配置出问题了吧!
----------------解决方案--------------------------------------------------------