空間站

          北極心空

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            15 Posts :: 393 Stories :: 160 Comments :: 0 Trackbacks
          作者:江南白衣     

              因為Retrotranslator的出現(xiàn),SpringSide 1.0終于放心升到JDK5.0,并保證仍然100%可以運行在JDK1.4的服務(wù)器上。

              不能隨意更改運行環(huán)境JDK的歷史項目,客戶真金白銀買了不支持JDK5的Weblogic8.1的項目,一般只能看著JDK5的annotation、泛型和EJB3干咽口水,所以上帝說要有光,我們有了這個恩物。

              和以前推薦的Retroweaver一樣,大家直接用JDK5開發(fā),如果需要部署到JDK1.4的運行環(huán)境,就通過asm把Class轉(zhuǎn)到JDK1.4的字節(jié)碼。
             但它不僅支持JDK5的語法,還支持JDK5的新增API。
             下午試驗了一下,把用了大量JDK5特征的EasyMock移植到JDK1.4,一行代碼未改就通過了。正是由于這點,SpringSide終于下定決心升級,畢竟使用JDK5的框架越來越多,如果困守JDK1.4必然受到越來越多局限。既然現(xiàn)在有了完全兼容的保證,就升了吧。 本來這么一樣東西應該是由Sun發(fā)行的,Java的開源社區(qū)強悍得嚇人。

             Retrotranslator的用法很簡單,可以用命令行、Ant和IDEA插件自動轉(zhuǎn)換,http://retrotranslator.sf.net 上講得很清楚,可以轉(zhuǎn)換Jar,也可以轉(zhuǎn)換Class目錄。
             比較特別的是有個Verify選項,能確保你沒有用到它暫時還不支持的JDK5 API(記得Classpath里要加入JDK1.4的rt.jar)。在SpringSide的build.xml里已加入了這個verfiy  target,確保代碼仍然可以在JDK1.4上運行。(實踐把springside部署回Tomcat5.0+JDK1.4環(huán)境,除了Spring cgilib式的AOP Proxy與泛型的反射函數(shù)有沖突外需進一步研究外,其它一切工作正常)

          Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=694204

          Retrotranslator JDK1.4 兼容指南

          主頁:http://retrotranslator.sf.net

          1.概述

          因為Retrotranslator的出現(xiàn),SpringSide終于放心升到JDK5.0,只要用戶在build的時候選擇war14 task,生成的war就保證仍然100%運行在JDK1.4的服務(wù)器上。在最新的retrotranslator 1.0.7 支持下,SpringSide在Tomcat 5.0+JDK1.4上部署成功。

              不能隨意更改運行環(huán)境JDK的歷史項目,客戶真金白銀買了不支持JDK5的Weblogic8.1的項目,一般只能看著JDK5的annotation、泛型和EJB3干咽口水,所以上帝說要有光,我們有了這個恩物。

              和以前推薦的Retroweaver一樣,大家直接用JDK5開發(fā),如果需要部署到JDK1.4的運行環(huán)境,就通過asm把Class轉(zhuǎn)到JDK1.4的字節(jié)碼。

           但它不僅支持JDK5的新語法,還大量支持JDK5的新增API。

            Retrotranslator的用法很簡單,可以用命令行、Ant和IDEA插件自動轉(zhuǎn)換,http://retrotranslator.sf.net 上講得很清楚,可以轉(zhuǎn)換Jar,也可以轉(zhuǎn)換Class目錄。
             比較特別的是有個Verify選項,能確保你沒有用到它暫時還不支持的JDK5 API(記得Classpath里要加入JDK1.4的rt.jar)。

          war14 task 簡述

          war14在打包時,會調(diào)用/misc/jdk14/build.xml, 為drools,compas,easymock2等幾個使用了JDK1.5技術(shù)的jar 生成jdk1.4的版本,并為項目的classes 目錄生成JDK1.4的版本,然后用它們替換war中原來的內(nèi)容即可。

          注意用戶可能要自己在/misc/jdk14/build.properties中設(shè)一下jdk1.4的路徑。

          build.xml 片斷:

          <target name="jdk14src">
                  <taskdef name="retrotranslator" classpathref="compile.classpath"
                           classname="net.sf.retrotranslator.transformer.RetrotranslatorTask"/>
                  <retrotranslator destdir="classes" verify="true">
                      <src path="../../springside-bookstore/webapp/WEB-INF/classes"/>
                      <classpath location="${jdk14_home}/lib/rt.jar"/>
                      <classpath refid="compile.classpath"/>
                  </retrotranslator>
          </target>
          posted on 2007-08-10 18:36 蘆葦 閱讀(747) 評論(0)  編輯  收藏 所屬分類: JAVA其他
          主站蜘蛛池模板: 北辰区| 泾阳县| 阿拉善盟| 攀枝花市| 沅江市| 班玛县| 仁化县| 北宁市| 通渭县| 永康市| 白银市| 长沙市| 贺兰县| 额济纳旗| 绍兴市| 卫辉市| 赣州市| 金湖县| 贞丰县| 社会| 南皮县| 江阴市| 汪清县| 二连浩特市| 化德县| 舞阳县| 深州市| 仁怀市| 彭泽县| 土默特左旗| 荔波县| 涿州市| 兴文县| 满洲里市| 独山县| 安康市| 麦盖提县| 阿拉善左旗| 濮阳县| 民权县| 崇仁县|