版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
RCP產(chǎn)品
開(kāi)發(fā)及發(fā)布流程山東中創(chuàng)軟件商用中間件股份有限公司時(shí)迎清2014.03.17主要內(nèi)容一覽RCP簡(jiǎn)介(2m)開(kāi)發(fā)RCP應(yīng)用(30m)開(kāi)發(fā)產(chǎn)品定義文件(20m)發(fā)布RCP產(chǎn)品(5m)技術(shù)交流(10m)RCP簡(jiǎn)介EclipseRichClientPlatform,Eclipse富客戶(hù)端平臺(tái)。它允許開(kāi)發(fā)者使用Eclipse架構(gòu)設(shè)計(jì)靈活的、可擴(kuò)展的、美觀的、跨平臺(tái)的應(yīng)用程序。當(dāng)我們提到Eclipse的時(shí)候,許多Java開(kāi)發(fā)者的第一反應(yīng)就是那個(gè)性能良好,界面漂亮,Debug功能奇佳的Java集成開(kāi)發(fā)平臺(tái)。如果將Eclipse中關(guān)于IDE的內(nèi)容剝?nèi)?,剩下的就是一個(gè)提供基本工作臺(tái)功能的核心,包括對(duì)可移動(dòng)以及可疊加的窗口組件(編輯器和視圖)、菜單、工具欄、按鈕、表格、樹(shù)形結(jié)構(gòu)等等的支持,而這個(gè)核心就是EclipseRCP。EclipseRCP是一項(xiàng)位于Eclipse平臺(tái)核心的功能。RCP簡(jiǎn)介Eclipse本身就是一個(gè)提供了完善的插件機(jī)制的RCP平臺(tái)。引言“EclipseRCP就是由插件開(kāi)發(fā)轉(zhuǎn)向桌面應(yīng)用開(kāi)發(fā),構(gòu)建最小化的Eclipse平臺(tái)(8M)運(yùn)行你的桌面應(yīng)用,不必再為程序框架煩心,擺脫失敗的AWT和Swing,讓程序擁有專(zhuān)業(yè)級(jí)效果,而實(shí)現(xiàn)又很簡(jiǎn)單、很優(yōu)雅?!遍_(kāi)發(fā)RCP應(yīng)用開(kāi)發(fā)環(huán)境開(kāi)發(fā)工具:Eclipse-jee-3.6.1(helios-SR1)操作系統(tǒng):win32開(kāi)發(fā)RCP應(yīng)用創(chuàng)建RCP項(xiàng)目開(kāi)發(fā)RCP應(yīng)用創(chuàng)建RCP項(xiàng)目開(kāi)發(fā)RCP應(yīng)用創(chuàng)建RCP項(xiàng)目開(kāi)發(fā)RCP應(yīng)用創(chuàng)建RCP項(xiàng)目開(kāi)發(fā)RCP應(yīng)用創(chuàng)建RCP項(xiàng)目開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)plugin.xml文件(插件清清單文件)此文件各選項(xiàng)項(xiàng)卡使用不再再展開(kāi)介紹。。開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)代碼解析RCP模板自動(dòng)為我我們創(chuàng)建了5個(gè)類(lèi)Application.javaApplicationActionBarAdvisor.javaApplicationWorkbenchAdvisor.javaApplicationWorkbenchWindowAdvisor.javaPerspective.java下面我們對(duì)這5個(gè)類(lèi)進(jìn)行簡(jiǎn)要分析析。開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)代碼解析--Application.java RCP程序的入口點(diǎn)點(diǎn)publicclassApplicationimplementsIApplication{publicObjectstart(IApplicationContextcontext)throwsException{Displaydisplay=PlatformUI.createDisplay();try{intreturnCode=PlatformUI.createAndRunWorkbench(display,newApplicationWorkbenchAdvisor());if(returnCode==PlatformUI.RETURN_RESTART)returnIApplication.EXIT_RESTART;elsereturnIApplication.EXIT_OK;}finally{display.dispose();}}publicvoidstop(){if(!PlatformUI.isWorkbenchRunning())return;finalIWorkbenchworkbench=PlatformUI.getWorkbench();finalDisplaydisplay=workbench.getDisplay();display.syncExec(newRunnable(){publicvoidrun(){if(!display.isDisposed())workbench.close();}});}}開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)代碼解析--ApplicationWorkbenchAdvisor.javapublicclassApplicationWorkbenchAdvisorextendsWorkbenchAdvisor{privatestaticfinalStringPERSPECTIVE_ID="com.shi.eclilpse.sms.perspective";//$NON-NLS-1$publicWorkbenchWindowAdvisorcreateWorkbenchWindowAdvisor(IWorkbenchWindowConfigurerconfigurer){returnnewApplicationWorkbenchWindowAdvisor(configurer);}publicStringgetInitialWindowPerspectiveId(){returnPERSPECTIVE_ID;}}開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)結(jié)構(gòu)代碼解解析--ApplicationWorkbenchWindowAdvisor.javapublicclassApplicationWorkbenchWindowAdvisorextendsWorkbenchWindowAdvisor{publicApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurerconfigurer){super(configurer);}publicActionBarAdvisorcreateActionBarAdvisor(IActionBarConfigurerconfigurer){returnnewApplicationActionBarAdvisor(configurer);}publicvoidpreWindowOpen(){IWorkbenchWindowConfigurerconfigurer=getWindowConfigurer();configurer.setInitialSize(newPoint(400,300));configurer.setTitle("我的RCP測(cè)試");configurer.setShowCoolBar(false);configurer.setShowStatusLine(false);}}開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)代碼解析--ApplicationActionBarAdvisor.javapublicclassApplicationActionBarAdvisorextendsActionBarAdvisor{publicApplicationActionBarAdvisor(IActionBarConfigurerconfigurer){super(configurer);}protectedvoidmakeActions(IWorkbenchWindowwindow){}protectedvoidfillMenuBar(IMenuManagermenuBar){}}開(kāi)發(fā)RCP應(yīng)用RCP項(xiàng)目結(jié)構(gòu)代碼解析--Perspective.javapublicclassPerspectiveimplementsIPerspectiveFactory{publicvoidcreateInitialLayout(IPageLayoutlayout){}}開(kāi)發(fā)RCP應(yīng)用個(gè)性化化項(xiàng)目目測(cè)試自自動(dòng)創(chuàng)創(chuàng)建的的項(xiàng)目目(不作作任何何修改改,第第一次運(yùn)行行)添加菜菜單、、動(dòng)作作修改類(lèi)類(lèi)文件件:ApplicationActionBarAdvisor自定義義視圖圖設(shè)置窗窗口布布局((標(biāo)題題、大大小、、位置置等))修改類(lèi)類(lèi)文件件:ApplicationWorkbenchWindowAdvisor,Perspective替換啟啟動(dòng)畫(huà)畫(huà)面::splash.bmp視具體體需求求進(jìn)行行修改改開(kāi)發(fā)RCP應(yīng)用個(gè)性化化項(xiàng)目目測(cè)試修修改后后的項(xiàng)項(xiàng)目(第二二次運(yùn)運(yùn)行))開(kāi)發(fā)產(chǎn)產(chǎn)品定定義文文件簡(jiǎn)介*.product文件在EclipseV3.1引入ProductionConfiguration之前,,RCP開(kāi)發(fā)人人員面面臨著著如何何有效效且高高效地地打包包和交交付具具有必必要插插件的的RCP項(xiàng)目的的問(wèn)題題。此此問(wèn)題題實(shí)際際上是是影響響到使使用率率的問(wèn)問(wèn)題,,因?yàn)闉樗颈举|(zhì)上上決定定了其其軟件件的分分布和和可用用性。。多虧虧了EclipseV3.1的新ProductionConfiguration功能,,現(xiàn)在在您可可以輕輕松將將其應(yīng)應(yīng)用程程序與與依賴(lài)賴(lài)項(xiàng)和和品牌牌推廣廣元素素輕松松地打打包在在一起起了。*.product文件提提供了一個(gè)個(gè)和plugin.xml類(lèi)似的的界面面,提供了了項(xiàng)目目的啟啟動(dòng)、、打包包導(dǎo)出出、項(xiàng)項(xiàng)目個(gè)性化化(名稱(chēng),,加載載圖片片,splash)等功能。開(kāi)發(fā)產(chǎn)產(chǎn)品定定義文件創(chuàng)建開(kāi)發(fā)產(chǎn)產(chǎn)品定定義文件創(chuàng)建開(kāi)發(fā)產(chǎn)產(chǎn)品定定義文文件編輯duct文件開(kāi)發(fā)產(chǎn)產(chǎn)品定定義文文件編輯Overview:配置產(chǎn)產(chǎn)品ID、版本、名稱(chēng)稱(chēng)、product、applicationDependencies:配置依賴(lài)的的插件件Configuration:配置插件及及其啟啟動(dòng)級(jí)級(jí)別,,指定config.ini文件(可自自動(dòng)生生成))4.Lauching:配置啟啟動(dòng)器器名稱(chēng)和和圖標(biāo)、程序參參數(shù)、虛擬機(jī)機(jī)參數(shù)數(shù)5.Splash:指定splash的圖片片和格格式,,添加加進(jìn)度度條和進(jìn)度信信息6.Branding:指定windows任務(wù)欄欄的圖圖標(biāo)以以及about對(duì)話(huà)框框信息7.Licensing:指定licensing信息開(kāi)發(fā)產(chǎn)產(chǎn)品定定義文文件運(yùn)行發(fā)布RCP產(chǎn)品法律聲聲明about.html這個(gè)文文件放放在項(xiàng)項(xiàng)目根根目錄錄,隨隨產(chǎn)品品一起起導(dǎo)出出。查看看方方式式::Help--About--InstallationDetails--Plug-ins--LegalInfo發(fā)布布RCP產(chǎn)品品先構(gòu)構(gòu)建建打開(kāi)開(kāi)plugin.xml--Build注::不用用勾勾選選.product文件件、、src、bin;plugin_customization.ini是運(yùn)運(yùn)行行產(chǎn)產(chǎn)品品時(shí)時(shí)自自動(dòng)動(dòng)生生成成的的。。發(fā)布布RCP產(chǎn)品品導(dǎo)出出使用用導(dǎo)導(dǎo)出出向向?qū)?dǎo)打開(kāi)開(kāi).producct--Overview發(fā)布布RCP產(chǎn)品品導(dǎo)出出發(fā)布布RCP產(chǎn)品品導(dǎo)出出技術(shù)術(shù)交交流流經(jīng)驗(yàn)驗(yàn)分分享享1.修改改.product配置置后后運(yùn)運(yùn)行行不不起起效效果果-->清除除工工作作空空間間緩緩存存數(shù)數(shù)據(jù)據(jù),,兩兩個(gè)個(gè)clear:運(yùn)行行--運(yùn)行行配配置置--Main--clear運(yùn)行行--運(yùn)行行配配置置--Configuration--clear技術(shù)術(shù)交交流流經(jīng)驗(yàn)驗(yàn)分分享享2.Application"com.shi.eclipse.sms.application"couldnotbefoundintheregistry.Theapplicationsavailableare:org.eclipse.equinox.app.error.-->檢查applicationID是否正確;檢查插件件依賴(lài),,使用addrequiredplug-ins;技術(shù)交流流經(jīng)驗(yàn)分享享3.導(dǎo)出產(chǎn)品后運(yùn)行報(bào)錯(cuò)"找不到簡(jiǎn)簡(jiǎn)介部件件的有
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 疫苗購(gòu)銷(xiāo)合同模板
- 荒山租賃合同條款詳解
- 終止總承包協(xié)議書(shū)
- 建筑安全網(wǎng)采購(gòu)合同
- 茶樓茶葉和解協(xié)議合同
- 補(bǔ)充協(xié)議和合同附件的改進(jìn)
- 科技活動(dòng)的主題班會(huì)
- 班級(jí)凝聚力主題班會(huì)12
- 軌道交通智能化調(diào)度系統(tǒng)升級(jí)方案
- 博士入學(xué)復(fù)試匯報(bào)94
- 全國(guó)主要城市氣象參數(shù)
- 宣城消防鋼樓梯施工方案
- 電力安全工作規(guī)程(變電部分)課件
- 初期支護(hù)設(shè)計(jì)驗(yàn)算
- 石關(guān)煤礦緊急避險(xiǎn)系統(tǒng)管理制度及技術(shù)檔案匯編
- 備件更換保障措施方案
- 2023年華僑、港澳、臺(tái)聯(lián)考高考語(yǔ)文試卷(含解析)
- 非織造學(xué)講義(大學(xué)期末復(fù)習(xí)資料)
- 《菜根譚》讀書(shū)分享
- 全國(guó)身份證號(hào)地區(qū)對(duì)應(yīng)表
- 機(jī)械租賃施工公司機(jī)構(gòu)設(shè)置
評(píng)論
0/150
提交評(píng)論