转:could not find the main class, Program will exit (说明编译器compiler版本要不高于installed JREs,JVM版本)

本文详细介绍了如何解决使用高版本JDK编译的Java class文件在较低版本JVM上运行时遇到的Could not find main class和java.lang.UnsupportedClassVersionError错误。通过调整Eclipse中的JDK路径和Compiler compliance level,可以成功解决这类问题。
那可能是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK.class件格式不同。这样,低版本的JVM无法解释执行这个.class文件,会抛出Could notfind the main class.program will exitjava.lang.UnsupportedClassVersionError不支持的Class版本错误。这个错误尤其在JDK5JDK5之前的版本上表现明显。因为,JDK5Java语法上作了不少增强,引入了一些新的.class文件的元素,导致旧版本的JVM无法解释、执行.class文件。即使这个类并没有使用任何JDK5的新元素,但是JDK5生成的.class文件,JDK1.4及其以前的JVM都无法辨认。

解决办法:

a)    弄清楚该程序是在哪个JDK版本下开发的JDK对于java学习者应该不能陌生

b)    Eclipse 菜单->Windows->Proferences->java->Installs  Jres重新设置JDK路径,改为开发程序时的JDK版本(如上图)(我做到这一步就可以了!我的eclipse7.0jdk6u13的。

c)    Windows->Proferences->java->Compiler,将compiler compliance level设置为与上面相同的JDK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值