每日一得

          不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發(fā)
          最近關(guān)心的內(nèi)容:SSH,seam,flex,敏捷,TDD
          本站的官方站點(diǎn)是:顛覆軟件

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            220 隨筆 :: 9 文章 :: 421 評(píng)論 :: 0 Trackbacks
          key words:jdk錯(cuò)誤,Unsupported major.minor version

          今天用一個(gè)工作流的產(chǎn)品,非要用jdk1.4的版本,沒(méi)辦法,只好切換回來(lái),但是換回來(lái)后打開頁(yè)面jsp出錯(cuò),提示Unsupported major.minor version 49.0錯(cuò)誤,到網(wǎng)上查了一下,49.0錯(cuò)誤屬于jdk1.5的錯(cuò)誤,但是我的jdk1.5已經(jīng)刪除了啊?怎么回事呢?

          最后想起來(lái),可能是jboss中的1.5 版本產(chǎn)生臨時(shí)文件class文件刪除,刪除后OK


          資料:Unsupported major.minor version 49.0
          posted on 2006-11-08 10:13 Alex 閱讀(578) 評(píng)論(2)  編輯  收藏 所屬分類: java

          評(píng)論

          # re: Unsupported major.minor version 49.0錯(cuò)誤 2007-05-13 20:54 隔夜黃鶯
          如果你看過(guò)java虛擬機(jī)規(guī)范,你就很容易理解 major.minor version是什么,那是字節(jié)碼的主次版本好,jdk1.5默認(rèn)編譯出來(lái)的是49.0,也就是31 00
          jdk1.4編譯出來(lái)的是48.0,也就是30 00
          版本為49.0的字節(jié)碼放在1.4的JVM中將無(wú)法裝載

          用二進(jìn)制編輯器,如ultraedit打開java class文件,第五至第七個(gè)字節(jié)就是此版本號(hào)和主版本號(hào),如jdk1.5編譯器編譯出來(lái)的class文件的頭八個(gè)字節(jié)是

          CA FE BA BE 00 00 00 31 版本好是49.0
          同時(shí)注意到?jīng)]有 頭四個(gè)字節(jié)好像有點(diǎn)意義,對(duì),他是java字節(jié)碼的魔數(shù) magic number,是一種咖啡的名字 cafe babe,它表明那是個(gè)java的字節(jié)碼

          如果用jdk1.5的編譯器 javac,用參數(shù) -target 1.4 可以制定編譯出的目標(biāo)代碼能在jvm1.4下運(yùn)行,也就是版本為48.0的class
          CA FE BA BE 00 00 00 31

          知其然,知其所以然  回復(fù)  更多評(píng)論
            

          # re: Unsupported major.minor version 49.0錯(cuò)誤 2007-05-13 20:56 隔夜黃鶯
          建議看看JVM規(guī)范,理解字節(jié)碼操作
          歡迎訪問(wèn)我的博客 http://unmi.blogcn.com
          多多交流。  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 正安县| 蓝山县| 商南县| 宜阳县| 阳谷县| 九江市| 扎兰屯市| 建宁县| 武安市| 四川省| 常山县| 龙川县| 万山特区| 襄汾县| 德清县| 宜阳县| 安龙县| 皮山县| 响水县| 常熟市| 东宁县| 新竹市| 明水县| 股票| 博兴县| 黑龙江省| 泗阳县| 桓仁| 荥阳市| 仙游县| 巢湖市| 柞水县| 溧阳市| 姚安县| 集安市| 赞皇县| 南漳县| 镇巴县| 定兴县| 高淳县| 濉溪县|