国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Retroweaver簡介
Retroweaver是一款代碼轉(zhuǎn)換工具,它允許你在Java代碼中使用Java 5的語言特性,卻能讓其運(yùn)行在jdk 1.4(或更早版本)的虛擬機(jī)上,Retroweaver操作的對象是Java 5編譯過的class文件,然后將其轉(zhuǎn)換成為可以在之前版本的Java虛擬機(jī)上運(yùn)行的class文件,Retroweaver是跨平臺(tái)的,你不需要有這此擔(dān)心。下面讓我們看看如何在實(shí)際開發(fā)中使用Retroweaver。
1 安裝:首先從http://www.sourceforge.net/projects/retroweaver下載Retroweaver開發(fā)包,也就是retroweaver-all.jar文件,下載后解壓即可。這里對解壓的目錄做一個(gè)說明,docs是文檔目錄;lib目錄包含第三方開發(fā)包,Retroweaver在執(zhí)行代碼轉(zhuǎn)換時(shí)需要用到這些開發(fā)包,這些開發(fā)包僅在轉(zhuǎn)換時(shí)用到,在部署、運(yùn)行時(shí)都不需要;release目錄包含以下幾個(gè)文件:轉(zhuǎn)換后代碼運(yùn)行時(shí)所需的retroweaver-rt.jar文件,該文件6K不到,你只需將其加入到運(yùn)行程序的CLASSPATH中即可;retroweaver.jar則是運(yùn)行轉(zhuǎn)換時(shí)所需的程序包;retroweaver-ex.jar則是一個(gè)提供了圖形界面的應(yīng)用程序,你可以使用該程序提供的界面執(zhí)行轉(zhuǎn)換操作。
2 使用:首先你的開發(fā)不受任何打擾,你使用鐘愛的IDE工具編寫Java 5的代碼,然后編譯、測試等,最后我們將這些Java 5編譯后的class文件通過Retroweaver轉(zhuǎn)換成之前Java版本虛擬機(jī)能夠運(yùn)行的class文件,通過以下命令就可以完成:
> java -cp release\retroweaver.jar;lib\bcel-
5.1.jar;lib\jace.jar;lib\Regex.jar com.rc.retroweaver.Weaver
-source classes
這樣Retroweaver就會(huì)將classes目錄下的所有Java 5編譯后的class文件轉(zhuǎn)換為我們期望的格式。當(dāng)然我們編譯時(shí)最常用的工具是Ant,如何和Ant整合,Retroweaver也提供了:
<taskdef name="retroweaver"com.rc.retroweaver.ant.RetroWeaverTask">
<classpath>
<fileset dir="${retroweaver.home}/lib" includes="**/*"/>
<pathelement
location="${retroweaver.home}/release/retroweaver.jar"/>
</classpath>
</taskdef>
<retroweaver srcdir="classes"/>
這樣在執(zhí)行基于Java 5的編譯操作后,我們再執(zhí)行這樣的Ant Task就可以自動(dòng)完成轉(zhuǎn)換啦。 如果命令行或Ant都不可以的話,你可以使用Retroweaver提供的圖形界面程序,只需執(zhí)行retroweaver-ex.jar文件即可。
3 API問題:Retroweaver主要是處理Java 5的語言特性,所以如果你引用了Java 5提供的新的API,這些代碼將無法在以前版本的虛擬機(jī)上運(yùn)行,就會(huì)出現(xiàn)ClassNotFoundException、NotSuchMethodException、NotSuchFieldException等等,當(dāng)前Retroweaver僅能處理java.lang.Enum, java.lang.Iterable, java.lang.StringBuilder這三個(gè)接口或類,所以要注意API的調(diào)用,記住Retroweaver是處于Java 5的語言特性,而不是兼容之前的API。
4 和IDEA整合:在實(shí)際的開發(fā)中,如果能將Retroweaver和IDE工具綁定起來,那么操作就會(huì)更加方便。首先我們可以通過Plugin Manager下載“Retroweaver Integeration”插件,安裝完畢后,我們只需選中“Build”菜單下的“Retroweaver compiled classes”選項(xiàng)即可,這樣在IDEA執(zhí)行編譯操作后會(huì)自動(dòng)執(zhí)行Retroweaver轉(zhuǎn)換,不需要你的干涉。最后需要注意的是將retroweaver-rt.jar加入到項(xiàng)目的CLASSPATH中,這樣就可以正確運(yùn)行你編寫的程序,操作就是這么簡單。
總結(jié):有這樣一個(gè)事實(shí),使用Java 5的語言特性對我們的開發(fā)效率有非常大的提高,好多以前很難解決的問題使用Java 5將非常方便。Retroweaver當(dāng)前支持以下語言特性:generics、extended Loop、static imports、autoboxing/unboxing、varargs、enumerations、annotations。如果你的客戶或經(jīng)理始終堅(jiān)持使用Jdk 1.4或以前版本的虛擬機(jī),而你有想通過Java 5的特性提升你的開發(fā)效率,Retroweaver是非常好的選擇。
講了這么多,Retroweaver有沒有實(shí)際的應(yīng)用例子,有的,那就是IDEA。IDEA的所有代碼正逐漸向Java 5過渡,這個(gè)過程中仍然需要IDEA能夠運(yùn)行在Jdk 1.4上,你可以看到一部分IDEA代碼開始使用Java 5語言特性,但是通過Retroweaver轉(zhuǎn)換,現(xiàn)在IDEA 5仍然可以運(yùn)行在Jdk 1.4上。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Ant打可執(zhí)行jar包指南
Android 反編譯apk 到j(luò)ava源碼的方法
Android 代碼混淆及反編譯方法
Maven之
Java 轉(zhuǎn)原生平臺(tái)代碼 RoboVM
Proguard 使用
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服