寻找java牛人!

来源:百度知道 编辑:UC知道 时间:2024/06/30 14:59:03
public class HelloWorld
{
public static void main(String args[])
{
System.out.println("Hello,World!");
}
}
编译成机器码后,然后在java虚拟机上运行出现:Exception in thread"main"java.lang.NoClassDefFoundError:HelloWorld
请教大家这是那个地方出问题了? 请各位指点一下!


不就是环境变量没配好嘛
干嘛用这么一个雷人的主题哦
照着下面的做:
http://zhidao.baidu.com/question/1314551.html?si=1

第一,.java文件编译之后不是机器码,.class文件只是一种中间代码“字节码”而已,然后将.class文件由JVM(java虚拟机)去加载执行。机器码和底层硬件(例如CPU等等)有关系,所以例如C语言的程序不可以跨平台运行,就是因为C程序编译后的代码不是中间码,而是不需要经过虚拟机而直接可以在特定硬件平台上运行的代码,因此C程序的执行效率要比java高。各个平台环境上只要安装了JVM,执行.class字节码的时候,JVM会去再次把字节码翻译成底层硬件可以执行的代码交给底层硬件去执行,这就是java可以跨平台的原因了。

第二,看你的错误提示是JVM找不到HelloWorld这个类的定义。因为JVM是执行.class文件的,所以很有可能就是JVM找不到你的HelloWorld.class文件。至于具体原因,就像楼上那位说的,很可能是你的环境变量配置错了。检查一下你的环境变量里面的classpath值对不对

请检查你的文件名是否HelloWorld.java,文件名与类名相同,若这个相同还不行。请检查javac 命今时文件名大小写是否正确

问题更牛…久违的helloworld

你的文件名是叫HelloWorld.java么?