当前位置: 技术问答>java相关
菜鸟般的问题
来源: 互联网 发布时间:2015-04-29
本文导语: 我写了一个HelloWorld程序,用JAVAC编译通过,但是我要用JAVA命令来查看其运行结果时出现如下错误 “Exception in thread 'main'java.lang.NoClassDefFoundError:HelloWorld”请问怎么解决才能看到我的运行结果 | ...
我写了一个HelloWorld程序,用JAVAC编译通过,但是我要用JAVA命令来查看其运行结果时出现如下错误 “Exception in thread 'main'java.lang.NoClassDefFoundError:HelloWorld”请问怎么解决才能看到我的运行结果
|
这是一种经常遇到的错误,你的classpath设置是这样的
SET CLASSPATH=D:JAVA2SDKJRELIBRT.JAR
也就意味着当执行java HelloWorld命令行时,java会到rt.jar中找你的HelloWorld类,他显然找不到,所以就会报错,有两种解决方法
一种是将你要运行的类放到一个固定的文件夹里,比如 c:myclass
然后 SET CLASSPATH=D:JAVA2SDKJRELIBRT.JAR;c:myclass
然后运行java HelloWorld就会得到预期的结果
另一种就是java -classpath classpath classname
如果类在d:myclass 就应该如下java -classpath d:myclass HelloWorld
显然这种方发较麻烦,所以一般采用第一种方式,
如果不想建额外的文件夹,你就要设置如下:
SET CLASSPATH=D:JAVA2SDKJRELIBRT.JAR;.
就是在后面夹一个点号,当然要用分号隔开
这里点号意味着当前路径,也就是说你在执行类的时候,必须在类所在的目录下输入java classname,比如类在e:classes,
则命令行如下e:classes>java HelloWorld
总之,无论用那种方法,一定要让java 找到所要执行的类
我想现在应该没问题了吧,祝你咖啡越喝越香,如果还有问题可给我写信
我的地址是:ocivejia@sina.com
SET CLASSPATH=D:JAVA2SDKJRELIBRT.JAR
也就意味着当执行java HelloWorld命令行时,java会到rt.jar中找你的HelloWorld类,他显然找不到,所以就会报错,有两种解决方法
一种是将你要运行的类放到一个固定的文件夹里,比如 c:myclass
然后 SET CLASSPATH=D:JAVA2SDKJRELIBRT.JAR;c:myclass
然后运行java HelloWorld就会得到预期的结果
另一种就是java -classpath classpath classname
如果类在d:myclass 就应该如下java -classpath d:myclass HelloWorld
显然这种方发较麻烦,所以一般采用第一种方式,
如果不想建额外的文件夹,你就要设置如下:
SET CLASSPATH=D:JAVA2SDKJRELIBRT.JAR;.
就是在后面夹一个点号,当然要用分号隔开
这里点号意味着当前路径,也就是说你在执行类的时候,必须在类所在的目录下输入java classname,比如类在e:classes,
则命令行如下e:classes>java HelloWorld
总之,无论用那种方法,一定要让java 找到所要执行的类
我想现在应该没问题了吧,祝你咖啡越喝越香,如果还有问题可给我写信
我的地址是:ocivejia@sina.com
|
SET CLASSPATH=.;D:JAVA2SDKJRELIBRT.JAR