代码没错,编译能通过,运行就报这种错
[color=red]Could not find the main class, Program will exit[/color]
[img]http://dl.iteye.com/upload/attachment/286380/b16c7cd2-dbd7-3d4e-a506-15fa9744a78d.png[/img]
自己在在网上查了下,整理分享下:
原因: 版本问题
使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。 高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。 这样,低版本的JVM无法解释执行这个.class文件,会抛出“Could not find the main class.program will exit”不支持的Class版本错误。 这个错误尤其在JDK5与JDK5之前的版本上表现明显。因为,JDK5在Java语法上作了不少增强,引入了一些新的.class文件的元素,导致旧版本的JVM无法解释、执行.class文件。即使这个类并没有使用任何JDK5的新元素,但是JDK5生成的.class文件,JDK1.4及其以前的JVM都无法辨认。
解决办法: 编译器和jvm版本匹配
一.提高jvm版本,与编译器版本匹配。这样就要重新装jdk,有点麻烦。
二.降低编译器版本,与jvm匹配 ,截图相信大家一看就知道了:
Windows->Proferences->java->Compiler:
[img]http://dl.iteye.com/upload/attachment/286378/9e5ac7cb-da23-32f3-b413-c6de65ad741e.png[/img]
Windows->Proferences->java->Installed JREs
[img]http://dl.iteye.com/upload/attachment/286376/17371928-9f0b-3897-8ec9-5017d6de5229.png[/img]
[color=red]Could not find the main class, Program will exit[/color]
[img]http://dl.iteye.com/upload/attachment/286380/b16c7cd2-dbd7-3d4e-a506-15fa9744a78d.png[/img]
自己在在网上查了下,整理分享下:
原因: 版本问题
使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。 高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。 这样,低版本的JVM无法解释执行这个.class文件,会抛出“Could not find the main class.program will exit”不支持的Class版本错误。 这个错误尤其在JDK5与JDK5之前的版本上表现明显。因为,JDK5在Java语法上作了不少增强,引入了一些新的.class文件的元素,导致旧版本的JVM无法解释、执行.class文件。即使这个类并没有使用任何JDK5的新元素,但是JDK5生成的.class文件,JDK1.4及其以前的JVM都无法辨认。
解决办法: 编译器和jvm版本匹配
一.提高jvm版本,与编译器版本匹配。这样就要重新装jdk,有点麻烦。
二.降低编译器版本,与jvm匹配 ,截图相信大家一看就知道了:
Windows->Proferences->java->Compiler:
[img]http://dl.iteye.com/upload/attachment/286378/9e5ac7cb-da23-32f3-b413-c6de65ad741e.png[/img]
Windows->Proferences->java->Installed JREs
[img]http://dl.iteye.com/upload/attachment/286376/17371928-9f0b-3897-8ec9-5017d6de5229.png[/img]