Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android技巧:Unable to execute dex: Multiple dex files define解決方法

Android技巧:Unable to execute dex: Multiple dex files define解決方法

編輯:Android開發教程

唔,之前已經想過今後不動android,沒想到還是因為比賽的原因重操舊業。android有很多問題是由於eclipse的不完善造成的,比如今天遇到的這個問題 Unable to execute dex: Multiple dex files define

[2011-10-23 16:23:29 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/myapp/R$array;
[2011-10-23 16:23:29 - myProj] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/myapp/R$array;

好了,造成這個問題的原因呢,每個人應該遇到的問題不一樣,但是都是因為eclipse編譯器造成的,可以參考一下兩個文章(1.http://blog.csdn.net/asan855/article/details/7568702  2.http://stackoverflow.com/questions/7870265/unable-to-execute-dex-multiple-dex-files-define-lcom-myapp-rarray)

 

下面說下我的想法和解決方案:

原因一:因為apk編譯出現問題

解決方法:直接刪除bin文件,eclipse在編譯的時候會再為你自動生成,如果沒有就重啟eclipse

原因二:包名重復

解決方法:包名重復有兩種可能。

1,其一是兩個jar名字一樣,在lib裡可以看一下,如果有一樣的就刪掉一個。

2. 這種情況是大家要注意的。有的時候jar名明明不同,但是也會報這個錯,因為兩個jar裡面的包名有相同的。這就要求我們打開jar,看看裡面的包名是不是重復。

如下圖是比對,Android_Services_2.2.0.jar和Android_Location_V1.1.2.jar,兩者沒有相同的包。

一些思考:在做程序的時候,遇到bug還是要自己從原理來理解找辦法,像是我上面第二條提到的情況,stackoverflow裡其實也沒交代,有的東西還是要自己多想,不要一味的上網找答案,特別是在操作蛋疼的android時。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved