命令行出错Exception in thread "main" java.lang.UnsupportedClassVersionError:
命令行出错Exception in thread "main" java.lang.UnsupportedClassVersionError: Filter(Unsupp
orted major.minor version 50.0).
这个错误差一点害死我了,在命令行下用javac *.java 编译某个类或打包的类都能顺利通过,但一运行就报main 函数出错了,意思是没有找到main 函数的入口,汗!言下之意就是我写了这么久的JAVA代码竟然会马虎到连main 函数都不知道写吗?在百度上搜了搜,很多人也问过这个问题,而很多菜鸟都说人家是没写main 函数,没法,只能自己找寻答案。
这个环境是我二年前就配好了的,并且虽然自己也装了Eclipse,MyEclipse之类的工具,但从来都是用这种方法,感觉很练手,虽然命令行看似笨点,但本人感觉很踏实。一直用着也没出过问题,几周前还用得好好的,但为什么今天就不行了呢?
命令行下输入:javac -version 显示:javac 1.4.2
我装的是jdk 1.6 的怎么就变成1.4 了,大致找到问题了,仔细想想用低版本的JDK编译高版本的.class就会报这个错,于是找到环境变量下的Path:
复制出来一份显示:D:\oracle\product\10.1.0\db_1\bin;D:\oracle\product\10.1.0\db_1\jre\1.4.2\bin\client;D:\oracle\product\10.1.0\db_1\jre\1.4.2\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Common Files\Adobe\AGL;C:\Program Files\IDM Computer Solutions\UltraEdit-32;c:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Microsoft SQL Server\80\Tools\BINN;
怎么会这样,罪魁祸首找到了,D:\oracle\product\10.1.0\db_1\jre\1.4.2\bin\client;D:\oracle\product\10.1.0\db_1\jre\1.4.2\bin; Oracle 竟然把我的环境变量变成了1.4.2, NND太可恶了,于是把%JAVA_HOME%\bin;添加到Oracle之前,变成
%JAVA_HOME%\bin;D:\oracle\product\10.1.0\db_1\bin;D:\oracle\product\10.1.0\db_1\jre\1.4.2\bin\client;D:\oracle\product\10.1.0\db_1\jre\1.4.2\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;。。。。。。。。。。
关闭原先的命令行窗口,再重开启一个,一试,果然正常了,编译,运行,想要的结果就出来了。
今天下午这个错误浪费了我很多时间,各位朋友你们是否也被Oracle害过呢?如果遇到这个同样的问题的话,不防照我说的改改,问题就解决了。
转自 : http://hi.baidu.com/tianxinghi/item/b24a8717dd6277592b3e22e6