異常“偶遇”之—— UnsupportedClassVersionError:Bad version number in .class file

今日在做系統補丁開發時,偶遇了一番UnsupportedClassVersionError錯誤。從異常棧信息來說,Bad Version number in .class file 已經是非常明確的指示!可惜的是,往往在實際當中,總是被一些表面東西遮蓋了這個Error的真實面目,把簡單複雜化了(造成這個問題多是IDE引起的, 哎,方便的同時,也在製造麻煩)。
Google了一番無疑都是指向同一個問題:Java虛擬機版本不一致引發編譯後.class文件在類加載時不能通過JVM驗證的問題。當然在此,解決方 案也是,只需要求統一Java虛擬機版本重新編譯就行了。
這次碰到的情況不會跳出上面的問題,只是在檢測這個異常的時候被Eclipse矇蔽了眼睛,走了一小段彎路罷了!在工程中顯示的JRE是1.5,但是在部 署到JBOSS服務器時,就老愛拋UnsupportedClassVersionError錯誤,哎,在Eclipse中一時半會以爲工程的配置都 OK,但是,等自己打開Eclipse中的Java Complier時,卻無語的發現這裏顯示的是1.6,哎,可能是自己電腦上安裝了其他JVM的問題!
【MARK】異常信息

Java 代碼
  1.      java.lang.UnsupportedClassVersionError: Bad version number in . class  file  
  2. at java.lang.ClassLoader.defineClass1(Native Method)  
  3. at java.lang.ClassLoader.defineClass(Unknown Source)  
  4. at java.security.SecureClassLoader.defineClass(Unknown Source)  
  5. at java.net.URLClassLoader.defineClass(Unknown Source)  
  6. at java.net.URLClassLoader.access$100 (Unknown Source)  
  7. at java.net.URLClassLoader$1 .run(Unknown Source)  
  8. at java.security.AccessController.doPrivileged(Native Method)  
  9. at java.net.URLClassLoader.findClass(Unknown Source)  
  10. at java.lang.ClassLoader.loadClass(Unknown Source)  
  11. at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)  
  12. at java.lang.ClassLoader.loadClass(Unknown Source)  
  13. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:683 )  
  14. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:425 )  
  15. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:445 )  
  16. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673 )  
  17. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386 )  
  18. at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196

2010-07-12

發佈了26 篇原創文章 · 獲贊 37 · 訪問量 20萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章