日期:2014-05-20  浏览次数:20826 次

为什么会出现Exception in thread "main" java.lang.NoClassDefFoundError:错误呢
如题,我写了一段名为a.java的程序如下:
public   class   a
{
public   static   void   main(String[]   args){
System.out.println( "Hello ");
}
}
通过cmd进入到当前路径,输入javac   a.java命令,编译成功
在输入java   a命令,就出现
Exception   in   thread   "main "   java.lang.NoClassDefFoundError:a
错误提示,我检查了程序完全没有问题啊,请大侠们救命啊!!!

------解决方案--------------------
我的异常网推荐解决方案:java环境变量设置
------解决方案--------------------
环境没有配好
------解决方案--------------------
classpath要么就不要加,如果要加一定要加上 .; 因为如果添加了CLASSPATH而没有加上.(句点)JAVA虚拟机是不会找当前路径的
------解决方案--------------------
classpath没有设置好
------解决方案--------------------
classpath路径没配置好吧.
所以才编译成功,运行不了.
------解决方案--------------------
有可能是-classpath没有设置的问题...
试试在命令行里该类的文件夹里输入:
java -classpath \ a
啊...对了...提醒一下...java的类最好是大写字母开头的名字...
还有第五楼的同学 "lzqlrr "...public void static main(String [] args)和
public void static main(String args[])是等同的...
------解决方案--------------------
虚拟机执行的是 .class文件
所以你要告诉虚拟机你的.class文件在哪
通过设置环境变量 的 ClassPath

.;E:\space\RMIDemo\classes

注意最前边的.;
------解决方案--------------------
lzqlrr() ( ) 信誉:100
String[] args和String args[]是一样的

------解决方案--------------------
環境配置沒設好
根據jdk安装到指定路径,如D:\jdk1.5.0
  
配置环境变量:

JAVA_HOME: D:\jdk1.5.0
PATH: D:\jdk1.5.0\bin;
CLASSPATH: .;D:\jdk1.5.0\lib\tools.jar;
------解决方案--------------------
你环境变量的配置有问题,建议按照以下配置:
我以前也有这个问题,配置如下:
创建环境变量:
JAVA_HOME=C:\jdk150_04;
PATH=%JAVA_HOME%\bin;%PATH%
CLASSPATH=.;%JAVA_HOME%\lib

祝你好运!!!