好久沒有命令行寫代碼了,今天用下
命令行出錯Exception in thread "main" java.lang.UnsupportedClassVersionError: Filter(Unsupp
orted major.minor version 50.0).

  一運行就報main 函數出錯了,意思是沒有找到main 函數的入口。可是代碼正確啊。到Eclipse 下試試,一切正常,看來不是它的問題。


命令行下輸入:javac -version 顯示:javac 1.4.2...    
                      java  -version 顯示:java  1.6...   

編譯和運行環境的版本怎么不一樣,JDK 不是明明1.6 嗎?裝的是jdk 1.6 的怎么就變成1.4 了?
報錯原來是用低版本的JDK編譯高版本的.class就會報這個錯

到環境變量查看了半天也沒發現問題,忽然發現PATH中oracle中怎么是1.4.2 了,


C:\Program Files\MySQL\MySQL Server 5.0\bin;D:\oracle\product\10.1.0\Db_4\bin;D:\oracle\product\10.1.0\Db_4\jre\1.4.2\bin\client;D:\oracle\product\10.1.0\Db_4\jre\1.4.2\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\TortoiseSVN\bin;%JAVA_HOME%\bin;%Path%

改為:在PATH 最前面加上 %JAVA_HOME%\

%JAVA_HOME%\bin;C:\Program Files\MySQL\MySQL Server 5.0\bin;D:\oracle\product\10.1.0\Db_4\bin;D:\oracle\product\10.1.0\Db_4\jre\1.4.2\bin\client;D:\oracle\product\10.1.0\Db_4\jre\1.4.2\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\TortoiseSVN\bin;

再到DOS 下試試 ,OK !運行通過。
C:\Documents and Settings\joan>javac -version
javac 1.6.0_02

C:\Documents and Settings\joan>java -version
java version "1.6.0_02"
Java(TM) SE Runtime Environment (build 1.6.0_02-b05)
Java HotSpot(TM) Client VM (build 1.6.0_02-b05, mixed mode, sharing)

C:\Documents and Settings\joan>javac test.java

C:\Documents and Settings\joan>java test

C:\Documents and Settings\joan>




JDK 配置 eg:

set JAVA_HOME= C:\Program Files\Java\jdk1.6.0_02

set PATH=%JAVA_HOME%\bin;%PATH%

set CLASSPATH=.;%JAVA_HOME%\lib