自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android設(shè)備上i-jetty環(huán)境的搭建

移動開發(fā) Android
本文介紹了Android設(shè)備上i-jetty環(huán)境的搭建,以及搭建過程中各種問題的解決方案。

編譯i-jetty

1、將源碼download下來,http://code.google.com/p/i-jetty/downloads/list

2、解壓文件,進(jìn)入pom.xml所在目錄,執(zhí)行命令:mvncleaninstall,參照(http://code.google.com/p/i-jetty/wiki/BuildInstructions)

執(zhí)行過程中,出現(xiàn)了異常導(dǎo)致失敗,是生成classes.dex時(shí)內(nèi)存溢出的問題,我們用Eclipse來解決吧。

3、創(chuàng)建i-jetty的android項(xiàng)目,將下載的i-jetty源碼覆蓋進(jìn)去,

4、將下面目錄下的jar引入到i-jetty項(xiàng)目中:

C:\DocumentsandSettings\troyz\.m2\repository\org\eclipse\jetty

還需要servlet-api-2.5.jar。

5、編譯并將i-jetty安裝到設(shè)備中。

將web項(xiàng)目發(fā)布到設(shè)備上去。參照(http://code.google.com/p/i-jetty/wiki/DownloadableWebapps)

因?yàn)閍ndroid上的java虛擬機(jī)不能直接解釋執(zhí)行.class文件,所以首先需要把web項(xiàng)目中的.class文件和.jar文件轉(zhuǎn)換成虛擬機(jī)能識別的.dex文件。

這里假設(shè)web項(xiàng)目的目錄在:E:\demo。

1、需要將WEB-INF/classes目錄和lib目錄下的文件,用dx命令處理成classes.dex并放到lib目錄下。

dx.bat--dex--output=E:\demo\WEB-INF\lib\classes.zipE:\demo\WEB-INF\classesE:\demo\WEB-INF\lib

2、打成war包。

cd E:\demo

jar-cvfdemo.war*.*

3、生成classes.zip后,可以將原先的.class和.jar刪除掉。

4、通過i-jetty的download功能,把war下載到設(shè)備上去,也可以直接把demo.war放到/sdcard/jetty/webapps/目錄下。

5、啟動i-jetty服務(wù)器。

i-jetty對jsp的支持暫時(shí)似乎不完美,可能是我沒有找到好的方式,對html是支持的,包括html中的js,支持servlet。

androidtablet(sdk3.0)上,i-jetty的類加載器無法動態(tài)解壓加載classes.zip,報(bào)以下異常:

dalvikvm(22984):Can'topendexcache'/data/dalvik-cache/mnt@sdcard@JettyContext217761537@webinf@WEB-INF@lib@classes.zip@classes.dex':Nosuchfileordirectory

原因是/data/dalvik-cache目錄不可寫。

http://code.google.com/p/android/issues/detail?id=966

有一種解決方案:在打包android項(xiàng)目時(shí),把web項(xiàng)目中的java文件和jar文件放到android項(xiàng)目中一起打包,這樣就避免讓i- jetty動態(tài)加載dex文件了。war包中就不需要classes.zip,jar,.class文件了。但是這種方案有一個缺點(diǎn):不能動態(tài)部署新的 war包。

6、如果要在Web程序中,使用android的Context,需要這樣做:

  1. public void init(ServletConfig config) throws ServletException   
  2. {   
  3.     super.init(config);   
  4.     android.content.ContentResolver resolver = (android.content.ContentResolver) config.getServletContext().getAttribute("org.mortbay.ijetty.contentResolver");   
  5.     android.content.Context androidContext = (android.content.Context) config.getServletContext().getAttribute("org.mortbay.ijetty.context");   
  6. }  
責(zé)任編輯:閆佳明 來源: jizhuomi
相關(guān)推薦

2011-06-29 10:06:27

Ubuntu 11.0Android

2010-09-17 14:27:18

NetBeansAndroid

2010-12-13 14:41:44

Android 2.3MyEclipse

2015-08-07 11:11:15

反編譯源代碼Mac

2009-10-09 09:37:46

2012-04-28 08:43:12

CentOS

2016-08-16 13:44:28

AndroidLinuxADT

2013-07-23 06:11:44

Android開發(fā)學(xué)習(xí)Android開發(fā)環(huán)境Java

2010-08-31 09:39:37

2011-05-26 10:33:26

Android開發(fā)

2017-03-02 15:33:24

Android Thi環(huán)境搭建

2011-05-24 16:09:57

Androi

2014-02-26 11:11:05

AndroidStudio開發(fā)環(huán)境

2011-09-13 17:15:58

Eclipse And

2011-09-14 10:52:39

Android 2.2

2013-04-15 16:54:09

AMDiOS開發(fā)WIN7

2022-09-13 08:40:24

AndroidLinux

2011-08-29 11:32:44

UbuntuiPhone

2019-07-08 15:38:56

FedoraJupyter數(shù)據(jù)科學(xué)家

2012-10-29 11:15:46

IBMdw
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號