Android系統執行Java jar程式 -- dalvik運行dex Java工程

來源:互聯網
上載者:User

標籤:運行   main   不同的   ide   開發工具   main方法   jar包   建立   rect   

本文僅針對純java工程執行進行詮釋,一般在PC平台作為jar包形式存在,在Android平台則以dex包形式存在。

Java屬於進階程式語言,Java程式需要運行在特定的虛擬機器中,虛擬機器將Java位元組碼轉換成對應的機器指令進行執行。不同平台具有不同的虛擬機器對應各自的機器指令。PC端一般使用JVM虛擬機器,Android端使用dalvik虛擬機器。

需要配置環境:
  1. Java JDK開發環境
  2. idea開發工具
  3. Android SDK開發環境
  4. Android build-tools 環境變數(隨意指定一個版本即可)
JVM於dalvik

JVM:Pc平台java虛擬機器,為java應用執行提供執行環境。
dalvik:Android平台Java虛擬機器,為java應用提供運行環境,區別於jvm位元組碼。

Java程式執行PC執行idea配置可執行jar包

1、建立Java工程
2、idea選擇 file->project structure -> Artifacts() -->點擊+ 後選擇JAR -> from module with dependencies
3、配置編譯的module、指定入口類(必須覆寫main方法)
4、修改Directory for META-INF/MAINFEST.MF:去除其中的main (例如:E:\CloudFiles\project\TestJar\testlib\src\META-INF\MANIFEST.MF)

打包並執行

1、選擇build -> Build Artifacts -> 彈窗內選擇build 即開始打jar包,jar包輸出路徑為 \out\artifacts\moduleName 
2、運行jar包時會通過指定的java類執行,執行命令如下:

java -jar  E:\test.jar 
Android 執行

在Android平台執行Java程式需要依賴dalvik虛擬機器,因此需要將jar包轉換為對應的位元組碼檔案,操作步驟如下:
1、產生java jar包 同Pc執行
3、java jar包轉dex包,執行如下命令

dx --dex --output=test.dex E:\test.jar 

4、串連Android手機,並將dex執行程式推入Android裝置路徑下:

adb push E:\test.dex /data/local/tmp/

5、通過dalvik命令執行dex程式,程式通過指定的入口Java類的main方法開始執行

dalvikvm -cp  /data/local/tmp/test.dex com.qihoo.trace.TestMain

Android系統執行Java jar程式 -- dalvik運行dex Java工程

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.