專利名稱:使用命令行部署服務(wù)器上jar文件到模擬器的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式模擬器部署領(lǐng)域,特別是涉及使用命令行部署服務(wù)器上 JAR文件到模擬器的實(shí)現(xiàn)方法。
背景技術(shù):
嵌入式系統(tǒng)已經(jīng)廣泛滲透到人們的生活和工作中,據(jù)統(tǒng)計(jì),嵌入式處理器 的數(shù)量占分散處理器的94%,而PC機(jī)用的處理器只占6y。。根據(jù)美國(guó)嵌入式系統(tǒng) 專業(yè)雜志RTC報(bào)道,21世紀(jì)初的十年中,全球嵌入式系統(tǒng)市場(chǎng)需求量具有比PC 市場(chǎng)大10至100倍的商機(jī)。1998年在芝加哥舉辦的嵌入式系統(tǒng)會(huì)議上,與會(huì) 專家一致認(rèn)為,21世紀(jì)嵌入式系統(tǒng)將無所不在,它將為人類生產(chǎn)帶來革命性的 發(fā)展,實(shí)現(xiàn)"PCs Everywhere"的生活夢(mèng)想。
進(jìn)入21世紀(jì)以來,隨著嵌入式系統(tǒng)的研究和應(yīng)用的進(jìn)一步深入,嵌入式系 統(tǒng)將向網(wǎng)絡(luò)化、智能化、規(guī)范化、集成化方向發(fā)展從而形成一個(gè)全方位的嵌入 式系統(tǒng)應(yīng)用。在與各個(gè)行業(yè)的具體應(yīng)用相結(jié)合的過程中,嵌入式系統(tǒng)將對(duì)國(guó)民 經(jīng)濟(jì)進(jìn)行全方位的滲透,在我國(guó)國(guó)家現(xiàn)代化進(jìn)程中發(fā)揮巨大推進(jìn)作用。
智能化對(duì)軟件的要求高,需要好的軟件架構(gòu)及技術(shù)來達(dá)成。而軟件包含操 作系統(tǒng)及應(yīng)用軟件,如何降低軟件開發(fā)成本是當(dāng)務(wù)之急。對(duì)于嵌入式開發(fā)來說, J2ME提供的開放及低成本的開發(fā)環(huán)境,也是J2ME在手機(jī)市場(chǎng)如此受歡迎的主 要原因。
Java采用JCP的方法來公開的收集業(yè)界的建議來共同制定新的J2ME的標(biāo) 準(zhǔn)。新的技術(shù)可以為J2ME注入新的活力,使得J2ME可以符合市場(chǎng)新的功能要 求。Java也是互聯(lián)網(wǎng)的核心技術(shù),嵌入式設(shè)備如果要與互聯(lián)網(wǎng)進(jìn)行良好的溝通, 使用J2ME是最好的解決方案。因?yàn)镴ava在網(wǎng)絡(luò)上的安全性及跨平臺(tái)的特色, 是連接互聯(lián)網(wǎng)的重要要素。
Java不僅在大型電腦,個(gè)人電腦及互聯(lián)網(wǎng)上得到了廣泛的應(yīng)用,在手機(jī)及 IC卡等嵌入式的使用也得到了迅猛的發(fā)展,而且還有更上一層樓的趨勢(shì)。嵌入 式的市場(chǎng),由于其市場(chǎng)巨量的特質(zhì),使得其商機(jī)無限。J2ME是專為嵌入式設(shè)備而設(shè)計(jì)的Java版本,根據(jù)Sun公司統(tǒng)計(jì),J2ME的業(yè)績(jī)?cè)?005年得到了大幅度 的增長(zhǎng)。J2ME的使用與嵌入式的市場(chǎng)漸趨同步,以手機(jī)市場(chǎng)為例,由于3G市 場(chǎng)的快速進(jìn)展,對(duì)J2ME的功能需求更為增強(qiáng),使用J2ME的手機(jī),在全世界早 已超過十億部。
phoneME是SUN開源Java項(xiàng)目中的一個(gè)子項(xiàng)目,包含了 CLDC和CDC的 HotSpot實(shí)現(xiàn)以及多個(gè)JSR。由于phoneME是一個(gè)開源的商業(yè)級(jí)的J2ME實(shí)現(xiàn), 這就促使嵌入式應(yīng)用開發(fā)者移植PhoneME到各種嵌入式平臺(tái)上進(jìn)行使用。這同 時(shí)更加速了 J2ME在嵌入式設(shè)備上的推廣和擴(kuò)張。以J2ME平臺(tái)開發(fā)的應(yīng)用程序 叫做MIDlet,最終都運(yùn)行在嵌入式設(shè)備中實(shí)現(xiàn)特定功能。由于在手機(jī)上測(cè)試 Midlet需要先將Midlet部署到手機(jī)上, 一般商用的手機(jī)都有數(shù)據(jù)線及配套軟 件將電腦上Midlet傳輸?shù)绞謾C(jī)上。由于此過程頗為繁瑣,為了測(cè)試方便,開發(fā) Midlet前期, 一般都會(huì)先在模擬器上部署運(yùn)行。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種使用命令行部署服務(wù)器上JAR文件到模擬器的 實(shí)現(xiàn)方法。
本發(fā)明解決其技術(shù)問題采用的技術(shù)方案如下
1) 搭建服務(wù)器
搭建服務(wù)器,并將要部署的文件傳輸?shù)椒?wù)器上;
2) 下載文件系統(tǒng)中的JAR文件
從指定的服務(wù)器地址下載JAR文件到模擬器中的臨時(shí)文件中;
3) 安裝臨時(shí)文件并存儲(chǔ)
分析臨時(shí)文件中的信息,檢査許可,安裝并存儲(chǔ);
4) 運(yùn)行已安裝套件
使用命令行運(yùn)行己安裝的特定序號(hào)的套件;
5) 列出己安裝套件
使用命令行列出本模擬器上所有已安裝的套件;
6) 移除套件
使用命令行移除模擬器上已安裝的特定編號(hào)的套件。 本發(fā)明與背景技術(shù)相比,具有的有益的效果是-本發(fā)明是一種使用命令行部署服務(wù)器上JAR文件到模擬器的實(shí)現(xiàn)方法,其 主要功能是結(jié)合部署的整個(gè)過程的特點(diǎn),包含了下載、存儲(chǔ)、列出、運(yùn)行和移 除套件構(gòu)成了一個(gè)完整的部署過程。
(1) 方便性。本方法無需下載到手機(jī)中運(yùn)行,直接在模擬器上部署并且運(yùn) 行測(cè)試。
(2) 靈活行。本方法需要搭建一個(gè)服務(wù)器,這樣可以讓更多的人測(cè)試編寫 的Midlet。
圖1是此種部署方法的部署流程。
具體實(shí)施例方式
本發(fā)明是一種使用命令行部署服務(wù)器上JAR文件到模擬器的實(shí)現(xiàn)方法,下 面說明其具體實(shí)施過程。
1) 搭建服務(wù)器
搭建Web服務(wù)器,服務(wù)器需要提供http的訪問,而且提供文件在服務(wù)器上 的存儲(chǔ)。對(duì)于Tomcat服務(wù)器來說,需要在其配置文件web. xml中添加對(duì)于jad 和jar文件的識(shí)別。對(duì)于JAD文件類型,選擇文件擴(kuò)展名為.jad, MIME類型為 text/vnd. sun. j2me.app-descriptor。對(duì)于JAR文件類型,選擇文件擴(kuò)展名 為.jar, MIME類型為即plication/java-archive。至此,Web服務(wù)器已經(jīng)搭建 成功,然后還需要將要部署的文件傳輸?shù)椒?wù)器上,其傳輸方式任選,可以是 http傳輸,ftp傳輸,文件拷貝。 一般情況下此種部署方法中,服務(wù)器可以搭 建在編寫Midlet的電腦上,從而可以省去了文件從文件系統(tǒng)到服務(wù)器的傳輸過 程。
2) 下載文件系統(tǒng)中的JAR文件
部署JAR文件首先需要將服務(wù)器上的JAR文件下載到模擬器文件系統(tǒng)中的 臨時(shí)文件。命令行需要部署JAR文件的http路徑作為參數(shù)傳入。將文件系統(tǒng)中 的JAR文件作為輸入流讀取,模擬器文件系統(tǒng)中的臨時(shí)文件作為輸出流寫入, 建立http連接,讀出輸入流,寫入輸出流中,其中傳輸單位是1K。
3) 安裝臨時(shí)文件并存儲(chǔ)根據(jù)模擬器文件系統(tǒng)中的臨時(shí)文件,分析出原始JAR文件中的屬性。檢査 是否允許安裝,然后檢査此文件要求的運(yùn)行時(shí)環(huán)境,,配置是否被模擬器支持, 檢査模擬器上是否已安裝了與此文件同名的套件,選擇是升級(jí)還是重新安裝。 然后將分析出來的屬性對(duì)應(yīng)的存入內(nèi)部套件的結(jié)構(gòu)中,以便后續(xù)反饋一些必要 的信息給用戶。
4) 運(yùn)行已安裝文件
此功能運(yùn)行模擬器上安裝存儲(chǔ)的某個(gè)套件,運(yùn)行時(shí)需要指定序號(hào),此序號(hào) 取值范圍為[l-n], n代表此時(shí)虛擬機(jī)上安裝著的套件總數(shù),越早安裝的,此序 號(hào)值越大。注意此序號(hào)不同于套件安裝時(shí)返回的套件標(biāo)識(shí)。只有序號(hào)作為參數(shù) 時(shí),運(yùn)行的是套件中的第一個(gè)Midlet。后面再跟上套件中的類作為參數(shù),則可 以選中特定的Midlet來運(yùn)行。
5) 列出己安裝套件
此功能快速列出模擬器上安裝著的套件,顯示出套件的屬性包括編號(hào)、 名字、版本、開發(fā)商、描述及此套件中的所有的Midlet名字和對(duì)應(yīng)的類。從而 可以馬上驗(yàn)證此前安裝套件步驟是否成功
6) 移除套件
此功能可以移除指定編號(hào)的套件或是直接移除模擬器上安裝的全部套件。 這里指定的編號(hào)就是"列出已安裝套件"中對(duì)應(yīng)的套件標(biāo)號(hào)。將被移除的套件 所用到的資源都會(huì)被釋放除非此資源正在被使用。
有了上述六個(gè)步驟的通力配合,可以完成所有命令行部署服務(wù)器上Midlet 相關(guān)功能。由于此發(fā)明需要搭建服務(wù)器,更接近實(shí)際手機(jī)中的OTA (over the air)安裝方式。
權(quán)利要求
1、一種使用命令行部署服務(wù)器上JAR文件到模擬器的實(shí)現(xiàn)方法,其特征在于,包括以下步驟1)搭建服務(wù)器搭建服務(wù)器,并將要部署的文件傳輸?shù)椒?wù)器上;2)下載文件系統(tǒng)中的JAR文件從指定的服務(wù)器地址下載JAR文件到模擬器中的臨時(shí)文件中;3)安裝臨時(shí)文件并存儲(chǔ)分析臨時(shí)文件中的信息,檢查許可,安裝并存儲(chǔ);4)運(yùn)行已安裝套件使用命令行運(yùn)行已安裝的特定序號(hào)的套件;5)列出已安裝套件使用命令行列出本模擬器上所有已安裝的套件;6)移除套件使用命令行移除模擬器上已安裝的特定編號(hào)的套件。
全文摘要
本發(fā)明涉及嵌入式模擬器部署領(lǐng)域,旨在提供一種使用命令行部署服務(wù)器上JAR文件到模擬器的實(shí)現(xiàn)方法。該方法包括搭建服務(wù)器、下載文件系統(tǒng)中的JAR文件、安裝臨時(shí)文件并存儲(chǔ)、運(yùn)行已安裝套件、列出已安裝套件、移除套件。本發(fā)明主要功能是結(jié)合部署的整個(gè)過程的特點(diǎn),包含了下載、存儲(chǔ)、列出、運(yùn)行和移除套件構(gòu)成了一個(gè)完整的部署過程,具有方便性和靈活性。
文檔編號(hào)G06F17/30GK101419609SQ20081016224
公開日2009年4月29日 申請(qǐng)日期2008年11月27日 優(yōu)先權(quán)日2008年11月27日
發(fā)明者馮德貴, 俊 吳, 施青松, 歐陽(yáng)雷, 罡 王, 繆良華, 羅尚虎, 威 胡, 劍 陳, 陳天洲 申請(qǐng)人:浙江大學(xué);Ut斯達(dá)康通訊有限公司