概述
MyEclipse為Eclipse提供了一個(gè)大量私有和開(kāi)源的Java工具的集合,這解決了各種開(kāi)源工具的不一致和缺點(diǎn)。NitroX是一個(gè)繁雜而強(qiáng)大的加速Java Web應(yīng)用開(kāi)發(fā)的工具,還包含了一個(gè)強(qiáng)大且能夠編譯所有JSP和Struts Web應(yīng)用的工具AppXRay。這些工具解析Java和XML配置文件來(lái)提供看蟮拇臚瓿珊偷魘閱芰Α?lt;br />
任何想知道在粗糙的開(kāi)源解決方案和優(yōu)雅的商業(yè)軟件之間是否存在中間層的人都應(yīng)該看一下MyEclipse和NitroX開(kāi)發(fā)環(huán)境。兩者都是商業(yè)的插件和工具集合,為免費(fèi)的Eclipse開(kāi)源平臺(tái)增加了大量有用的開(kāi)發(fā)服務(wù)端應(yīng)用的功能。
這兩個(gè)軟件來(lái)自擁有不同想法的公司。M7的NitroX關(guān)注創(chuàng)建Web應(yīng)用,他包含三個(gè)不同價(jià)格的版本,但核心都是AppXRay(一種深入的自省技術(shù),集成了Java的命名空間和XML配置代碼)。最弱的版本提供了JSP調(diào)試功能,年費(fèi)$299;中間版本增加了Struts應(yīng)用的支持需要額外的$200;最強(qiáng)的版本包含創(chuàng)建和調(diào)試JSF的工具需要再加$200.當(dāng)然在多許可證時(shí)可以一些折扣。
來(lái)自Genuitec的MyEclipse企業(yè)版提供更多的輕量級(jí)工具但只需要年費(fèi)$29.95。其中包含一些由其他組織開(kāi)發(fā)的開(kāi)源插件,但Genuitec增強(qiáng)了功能并且增加一些好的文檔。
MyEclipse包含生成Struts Web應(yīng)用的自動(dòng)工具,還包含其他的工具如配置Hibernate框架的數(shù)據(jù)庫(kù)連接及 SQL瀏覽器。
這些項(xiàng)目都致力于替代IBM原來(lái)的包含在其旗艦IDE(WebSphere)中創(chuàng)建EJB組件和JSP頁(yè)面的功能。IBM剝離了這些功能而將其核心作為Eclipse推出,毫無(wú)疑問(wèn)IBM選擇Eclipse(日蝕)這個(gè)名字是對(duì)Java名字擁有者Sun(太陽(yáng))的一次不那么敏感的挑戰(zhàn)。Eclipse已經(jīng)強(qiáng)大起來(lái),吸引很多開(kāi)發(fā)者來(lái)創(chuàng)建自己的插件。許多插件是開(kāi)源的,但也有一些是商業(yè)的。而結(jié)果是開(kāi)源的代碼與商業(yè)的代碼被優(yōu)雅的混和起來(lái)使其更加有用。
M7 NitroX for JSP, Struts, and JSF
NitroX和MyEclipse都是商業(yè)代碼與開(kāi)源代碼共存的好例子。專(zhuān)業(yè)的Web應(yīng)用開(kāi)發(fā)者可能首先想試一下NitroX工具集,只因?yàn)槠涫亲顝V泛的。AppXRay特性看起來(lái)專(zhuān)注于使程序員只需要鍵入名字一次。AppXRay包含許多代碼完成工具能夠深入Java代碼模塊和XML配置文件。在你定義一些方法/屬性/配置選項(xiàng)一個(gè)名字后,AppXRay會(huì)找到他并放在下拉菜單中為你下次使用。
AppXRay比一般的調(diào)試器更強(qiáng)大,他能夠解析和存儲(chǔ)來(lái)自XML配置文件中更多的信息。這是個(gè)有用的補(bǔ)充,因?yàn)楝F(xiàn)在的框架編程如Struts都是Java和XML的混和。大部分程序員可以告訴你所有Java的類(lèi)型檢查對(duì)XML中的錯(cuò)誤配置項(xiàng)毫無(wú)用處。
來(lái)自AppXRay的信息對(duì)調(diào)試也大有用處。你可以更深地了解JSP頁(yè)面并且將其與XML配置文件中的信息關(guān)聯(lián)起來(lái)。NitroX標(biāo)準(zhǔn)的外觀和變量瀏覽面板來(lái)處理更多的XML編輯問(wèn)題。
NitroX還包含JSP設(shè)計(jì)頁(yè)面分為代碼和HTML布局。你可以通過(guò)點(diǎn)擊最終布局發(fā)現(xiàn)JSP代碼的一部分。這與使用WYSIWYG HTML頁(yè)面布局工具類(lèi)似,但他還為一些標(biāo)準(zhǔn)JSP標(biāo)記提供圖標(biāo)。如果你在JSP頁(yè)面中包含循環(huán)或其他構(gòu)件,你可以可視化其效果。
NitroX系統(tǒng)不是完美的,AppXRay還有些粗糙的地方。如他可以創(chuàng)建一些沒(méi)有權(quán)限類(lèi)型的action,但向?qū)s警告錯(cuò)誤;一些向?qū)е煌瓿梢话氲墓δ?。?gòu)建Struts應(yīng)用的過(guò)程中還包含一些無(wú)用的Form。當(dāng)然NitroX深入XML配置文件的能力還是一個(gè)非常大的進(jìn)步。
MyEclipse Enterprise Workbench
通過(guò)比較Strut開(kāi)發(fā)環(huán)境是不公平的,因?yàn)镸yEclipse根本沒(méi)有包含AppXRay編譯所包含的高級(jí)信息。但這并不意味MyEclipse是不足的,他也包含很多好的創(chuàng)建Struts應(yīng)用和編輯配置文件的向?qū)АD憧梢酝ㄟ^(guò)幾次點(diǎn)擊就能Action或者用向?qū)?lái)完成其他功能。這些方法更接近于模板而不是怪異的名詞如AppXRay,但這已經(jīng)足夠了。(簡(jiǎn)化使我想知道為什么MyEclipse在自己的站點(diǎn)上使用那么多的PHP。難道他們不吃自己的狗糧嗎?)
MyEclipse的實(shí)際價(jià)值來(lái)自包含的發(fā)布包中的大量的工具。如CCS/JS/HTML/XML的編輯器,幫助創(chuàng)建EJB和Struts項(xiàng)目的向?qū)Рa(chǎn)生項(xiàng)目的所有主要的組件如action/session bean/form等。還包含編輯Hibernate配置文件和執(zhí)行SQL語(yǔ)句的工具。
我在數(shù)據(jù)庫(kù)瀏覽中的經(jīng)歷可能也是其他開(kāi)發(fā)者會(huì)在MyEclipse發(fā)現(xiàn)的好指南。MyEclipse綁定的數(shù)據(jù)庫(kù)工齡如SQLExplorer是一個(gè)GNU LGPL保護(hù)的Eclipse插件。我以前下載過(guò)SQLExplorer但由于沒(méi)有將數(shù)據(jù)庫(kù)驅(qū)動(dòng)放在正確的位置而沒(méi)有使用成功。而包含在MyEclipse中版本開(kāi)始時(shí)也沒(méi)有成功,提示我一些難以理解的錯(cuò)誤信息。在我準(zhǔn)備抱怨時(shí)我發(fā)現(xiàn)的良好的幫助文檔,這使得我順利地安裝驅(qū)動(dòng)。MyEclipse的小伙子們沒(méi)有修正錯(cuò)誤信息,但他們發(fā)布了開(kāi)源版本沒(méi)有包含的良好而簡(jiǎn)單的文檔。
極度節(jié)儉的開(kāi)發(fā)者可能會(huì)直接使用原始的插件。這時(shí),原始的版本相對(duì)MyEclipse中的是更高級(jí)的。很難說(shuō)$30是否值得。但如果MyEclipse的文檔為你節(jié)約了幾十分鐘甚至一小時(shí),那么這錢(qián)還是值得的。
如果只是因?yàn)?0到20倍的價(jià)錢(qián)那么對(duì)NitroX的評(píng)判相對(duì)更難了。但如果你經(jīng)常構(gòu)建JSP和Struts應(yīng)用,那么這花費(fèi)只相當(dāng)于每天幾元而已。我們可以很容易看到來(lái)自AppXRay的代碼完成技術(shù)會(huì)大量的節(jié)約開(kāi)發(fā)時(shí)間。
那么從其他的開(kāi)發(fā)平臺(tái)如IntelliJ或Jbuilder轉(zhuǎn)換到這些工具是否有意義呢?這就不是簡(jiǎn)單的體驗(yàn)一下了,因?yàn)檫@些IDE也提供了對(duì)Java Web應(yīng)用的良好支持。此外,NitroX的完全版價(jià)格與許多大產(chǎn)品的價(jià)格差不多了。NitroX和MyEclipse的一個(gè)優(yōu)點(diǎn)是他們是Eclipse插件生態(tài)系統(tǒng)的一部分。你可以使用這些產(chǎn)品和其他插件而且他們可以很好共同使用。這種在商業(yè)代碼和開(kāi)源代碼之間的跨傳遞效果就是一個(gè)企業(yè)中共存的一個(gè)好例子。