解决Exception in thread "main" java.lang.NoClassDefFoundError

A friend of mine wanted to start to learn java, and I wanted to help him, so we created a simple Hello World example.
 

public class Hello {

public static void main(String argv[]) {

system.out.println("Hello world !");

}

then, when you compile it: 

> javac Hello.java

and want to execute it:

> java Hello

Exception in thread "main" java.lang.NoClassDefFoundError: Hello

We set the CLASSPATH and JAVA_HOME enviroment variable correctly, and the problem was still the same..

When we copied the Hello.class into a lib directory of JAVA_HOME, it worked, but not from the current directory !

We tried different versions of java.. and do you know where this stupid problem is?

in the CLASSPATH there should be:
CLASSPATH=.;c:/programme/jboss/lib;c:/programme/
j2sdk1.4.2_08/lib;c:/programme/j2sdk1.4.2_08/jre/lib; ...

yes.. a dot .. it means, that it will search for classes bytecode in the current directory !

you can also tell java to search the current directory with the -classpath parameter

> java -classpath . Hello

Problems like this can really discourage java newbies, and that moment was very embarassing :)

 

我的解决方法如下:java 设置环境变量 path c:/jkd6/bin classpath c:/jdk6/lib/dt.jar; c:/jdk6/lib/tools.jar

 

接下来在dos中输入:

I've tried the command: set classpath=%classpath%;.; It works! Amazing Thanks.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值