为什么会出现“Exception in thread "main" java.lang.NoClassDefFoundError: java\HelloDate/class”这样的错误?

bbface 2003-02-10 08:26:51
我安装的是jdk1.3,win2000系统,在dos下运行任何一个*.class文件都会出现:
“Exception in thread "main" java.lang.NoClassDefFoundError: java\HelloDate/class”这样类似的错误?
classpath设置为:C:\jdk1.3;C:\jdk1.3\jre;C:\jdk1.3\lib;C:\jdk1.3\bin;C:\jdk1.3\lib\tools.jar。
...全文
353 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cqxhhe 2003-03-01
  • 打赏
  • 举报
回复
是著名的类路径(classpath)问题啦。实际上,类路径是在编译过程就
涉及的Java中的概念。classpath就是指明去哪里找用到的类,就这么简单。由于我们的
HelloWorld没用到其它的(非java.lang包中的)类,所以编译时没遇到这个问题。运行
时呢,就要指明你的类在哪里了。解决方法嘛,可以用下面的命令运行:
java -classpath . HelloWorld
“.”就代表当前目录。当然这样做有点麻烦(是“太麻烦”!),我们可以在环境变量
中设置默认的classpath。方法就照上述设置path那样。将classpath设为:
classpath=.;c:\jdk1.2\lib\dt.jar;c:\jdk1.2\lib\tools.jar 后面的两个建议也设上
,以后开发用的着。

最简单的方法, 在dos下你的java 程序所在目录输入set classpath=.;
qxjavajava 2003-02-12
  • 打赏
  • 举报
回复
classpath设置gai为:,;C:\jdk1.3;C:\jdk1.3\jre;C:\jdk1.3\lib;C:\jdk1.3\bin;C:\jdk1.3\lib\tools.jar。

再试一试
bbface 2003-02-12
  • 打赏
  • 举报
回复
我的程序是这样的:
import java.util.*;
import java.lang.*;
public class HelloDate {
public static void main(String[] args) {
System.out.println("Hello, it's: ");
System.out.println(new Date());
}
}
还有其它原因吗?
比如安装JDK需要的设置等。
iamqqmyheart 2003-02-10
  • 打赏
  • 举报
回复
这样执行:
1.你的HelloDate.java中有package dir;语句时用java dir.HelloDate;
2.你的HelloDate.java中没有package dir;语句时用java HelloDate;
ssht968 2003-02-10
  • 打赏
  • 举报
回复
Exception in thread "main" java.lang.NoClassDefFoundError:
其实这个是你写的程序的原因呀。

看看的你原程序是不是和书上的一样?

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧