一个初学者的问题

knight0637 2003-10-15 10:14:46
class HelloWorldApp
{ public static void main(String[] args)
{ System.out.println("Hello World!");
}
}

这是任何java教材上都有的例子,用javac编译后形成HelloWorldApp.class, 然后用java解释总是出现错误:
Exception in thread "main" java.lang.NoClasssDefFoundError:HelloWorldApp\class请问这是怎么回事啊?
...全文
58 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
oldcold 2003-10-16
  • 打赏
  • 举报
回复
java HelloWorldApp
或classpath 的问题 重新设置一行试试
yiningchen 2003-10-16
  • 打赏
  • 举报
回复
java -cp . HelloWorldApp
无欲则钢 2003-10-16
  • 打赏
  • 举报
回复
classpath的问题啊
你到别的目录下去看看啊
metome 2003-10-16
  • 打赏
  • 举报
回复
同意fft123() 的观点
zleil 2003-10-16
  • 打赏
  • 举报
回复
我也遇到了同样的问题,不过现在解决了。
我用的是j2sdk,安装在c:\j2sdk,该目录下还有\bin,\lib,及src.zip等等。
src.zip李包含的是java所有类的源代码
所以应该 set CLASSPATH=.;C:\j2sdk\src.zip;c:\j2sdk\lib\dt.jar;c:\j2sdk\lib\tools.jar
注意:
在win98下这一行应该包含到c:\autoexec.bat中,然后重起系统。
如果另外写set.bat文件,运行她,然后再命令行用javac、java那么就会仍然出现以上错误。
//set.bat
set path=c:\system\command;c:\windows;c:\j2sdk\bin
set CLASSPATH=C:\j2sdk\src.zip;c:\j2sdk\lib\dt.jar;c:\j2sdk\lib\tools.jar
command
fft123 2003-10-16
  • 打赏
  • 举报
回复
先看看是不是classpath的问题
加不加public都可以,一个java文件中最多只能有一个public的类,而不是一定要有
classpath=.;c:\jdk1.4\lib\tools.jar;c:\jdk1.4\lib\dt.jar

看来你是java HelloWorldApp.class这样运行的
用javac编译时需要带扩展名,运行时不能带,只需要java HelloWorldApp就可以了
无名2018 2003-10-16
  • 打赏
  • 举报
回复
up;)
jackensun 2003-10-16
  • 打赏
  • 举报
回复
jdk 1.3以上的版本都不用设classpath了
zleil 2003-10-16
  • 打赏
  • 举报
回复
我搞错了,确实如fft123()所说。
设置好以后,运行java *
此时千万不可加扩展名,否这java就将其(如:apple.class)解释成apple\class几apple目录下名为class的java程序。如同解释System.out一样
hbDeng 2003-10-16
  • 打赏
  • 举报
回复
我查了一下《java编程思想》那本书

看看你把java 2 SDK 1.4装在哪个分区了?再看看classpath设置的对不对。
假设你装在C盘。写一个批处理文件jdk14.bat:
代码:
@echo off
rem JDK1.4
set PATH = c:\jdk1.4\bin;c:\windows;d:\windows\command
set classpath=.;c:\jdk1.4\lib\tools.jar


在桌面上建个快捷方式JDK1.4
工作目录(比如从c:\)随便写 批处理文件写上jdk14.bat.
就ok了

比如你编了程序叫 m.java
在工作目录下c:\javac m
等生成m.class 文件后
c:\java m
imagex 2003-10-16
  • 打赏
  • 举报
回复
运行程序是你是不是这样:
java HelloWorldApp.class
?
应该这样:
java HelloWorldApp
knight0637 2003-10-15
  • 打赏
  • 举报
回复
前面加不加public我都试过,结果还是出错,我也在前面加过import java.lang.*;也不行;开发环境就是sun的java 2 SDK 1.4,有谁知道为什么?
bigmouse2002 2003-10-15
  • 打赏
  • 举报
回复
没有定义classpath变量
用eclipse吧,连帮助都是中文的!
seaman0916 2003-10-15
  • 打赏
  • 举报
回复
public class HelloWorldApp
Java中必须有一个公有的类!

如果再不行,还有就是检查你的开发环境!

microspot 2003-10-15
  • 打赏
  • 举报
回复
教材上的例子不会是这样写的吧?
nightsuns 2003-10-15
  • 打赏
  • 举报
回复
不错,仅能有一个public
CNSC 2003-10-15
  • 打赏
  • 举报
回复
public class HelloWorldApp

62,615

社区成员

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

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