您的位置:首页 > 大数据 > 人工智能

错误处理:could not find the main class, Program will exit

2016-09-05 00:00 591 查看
1. 先检查环境变量配置是否有错。

a) 打开我的电脑--属性--高级--环境变量

b) 新建系统变量JAVA_HOME和CLASSPATH (注意:网上很多文章让JAVA_HOME为用户环境变量,但是这样做后,在控制台中输入javac,将会提示“javac不是内部或外部命令”)
变量名:JAVA_HOME
变量值:C:\ProgramFiles\Java\jdk1.7.0
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(注前面的点号和分号一定不能丢,还有中间的,后面的分号也不要丢了。点号表明将当前工作目录加入到该路径中)

c) 选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。
变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
这是java的环境配置,配置完成后直接启动eclipse,它会自动完成java环境的配置

2. 如果没有错误,那可能是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。这样,低版本的JVM无法解释执行这个.class文件,会抛出Could notfind the main class.program will exit,java.lang.UnsupportedClassVersionError不支持的Class版本错误。这个错误尤其在JDK5与JDK5之前的版本上表现明显。因为,JDK5在Java语法上作了不少增强,引入了一些新的.class文件的元素,导致旧版本的JVM无法解释、执行.class文件。即使这个类并没有使用任何JDK5的新元素,但是JDK5生成的.class文件,JDK1.4及其以前的JVM都无法辨认。

解决办法:

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

b) Eclipse 菜单->Windows->Proferences->java->Installs Jres重新设置JDK路径,改为开发程序时的JDK版本



c) Windows->Proferences->java->Compiler,将compiler compliance level设置为与上面相同的JDK
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: