MyEclipse中could not find the main class. Program will exit.问题

在MyEclipse中运行任何控制台的程序JVM都会出现上述问题,并报如下错误:
java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Exception in thread "main"

Web项目还可以跑,但里面所有的main()方法一运行就会出现上述错误。
昨天运行时还一切都正常,但今天就出现了这样的问题。所以不可能是环境变量的设置出现了错误,而且我也检查过环境变量的设置,没有问题。
请高手解释一下原因,帮忙给个解决的方法。谢谢!

原因:高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。

1、首先打开MyEclipse,在该页面中,点击打开主菜单中的Windows选项。

2、然后在弹出来的窗口中点击打开“Proferences”选项。

3、然后在弹出来的窗口中点击打开“java compiler”选项。

4、然后在弹出来的窗口中将编译器的JDK版本改为1.7的。如果安装的jre是1.6的则将这个改为1.6,根据自身的版本将JDK和JRE的版本改为一致。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-09-13

因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。这样,低版本的JVM无法解释执行这个.class文件,会抛出Could not find the main class.program will exit不支持的Class版本错误。

解决方法:

1、点击myeclipse上方菜单中的Window选项后弹出的子菜单中的“Preferences”选项进入preferences配置界面。

2、进入preferences配置界面后依次进入Java—>Installed JREs查看jdk版本,可以看到这个是1.7版本的。

3、接下来进入Java—>Compiler将编译器的JDK版本改为1.7的。如果你的安装的jre是1.6的则将这个改为1.6,根据自身的版本将JDK和JRE的版本改为一致。

4、改为一致后点击下方的“OK”选项确定保存即可。

本回答被网友采纳
第2个回答  2010-01-28
报错.class文件中的版本号不对,这说明你的MyEclipse使用的JRE的版本和编译控制台程序使用的JDK的版本不同,你需要在重新编译一下,在编译之前请检查工程所使用的JDK和MyEclipse使用的JRE版本是否一致,比如都是6.0,然后重新编译一下你的源文件。
第3个回答  推荐于2017-10-10
请确认JAVA编译器和JRE版本一致
右键点击项目--->>>preference-->>>JAVA compiler 查看编译器版本
右键点击项目--->>>build path--->>>Configure build path--->>>Libraries-->>JRE system library 查看JRE版本

如果不一致,修改成一样即可本回答被提问者采纳
第4个回答  2010-01-28
这个问题处理方法很简单。。。把项目删除,然后新建一个项目,把原项目里面内容复制到里面去

我之前在连jdbc的时候也碰到过,怎么调试都没用。。。后来就是这样解决的

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网