在開發過程中,eclipse是使用得最多的ide,但由于其開源且免費的性質決定了其不然有很多的bug,在項目很趕的時期碰到某些很惡的錯誤很浪費時間,也很讓人郁悶,現我總結一下我碰到的錯誤并總結下對應解決的方法:
1,從大的方面講,如果碰到一個工程有錯,首先看其jdk是否為最新的,比如有時候在進行工程移植時,吧一個工程導入到另一個eclipse工作環境,預設會是jdk1.4,此時就需要調整jdk版本到最新的比如jdk1.6;
2,再者就是有時候當移植工程時,會丢失掉android系統庫,此時可以先嘗試右鍵工程propertiey--->android--->選擇對應的系統庫,比如android2.2,這裡需要注意的是,當目前工程有關聯工程時,如果關聯工程是被引用包,那麼在propertiey--->android下方有個add選項,意思就是關聯工程,被關聯工程就是is
library.
3,如果問題還未得到解決,再繼續右鍵properties--->build_path檢查包,如果出現有紅x的包,remove掉,然後再導入正确的包;
4,有時候會出現gen檔案丢失的情況,此時則可以嘗試通過clean解決.
5,
最後就是當移植工程時,當移植前的工程所處sdk比較低,移植後的所處sdk比較高會出現:conversion
to dalvik format failed with error 1的錯誤,這個錯誤很惡心,網上的說法是通過clean解決,但很多時候解決不了,此時可以打開工程所在目錄,找到項目的classpath檔案
直接從其他正常項目裡面把
<classpathentry kind="lib" path ="自定義jar的位址" />
修改成
<classpathentry kind="con" path="com.android.ide.eclipse.adt.android_framework"/> 這樣子重新整理項目,android系統庫回來了,那個錯誤也解決了。
以上是暫時的總結,還有些錯誤暫時記不起來了,或者還有些錯誤暫時沒碰到,以後碰到了繼續記錄上。
補充說明: android r.java檔案丢失的處理
r.java這個檔案是會自動生成的,但是如果你不小心xml檔案寫錯了,或者不小心在編輯xml的時候點選了run(其實這個時候會運作這個xml檔案,會生成一個同名的xml檔案,字尾為xx.out.xml),然後正巧你遊clear了一下項目,你可能會發現gen下面的r.java的檔案沒有了,這個在剛開始的時候很氣人,真不知道怎麼解決,後來發現,隻要xml檔案有問題,系統是絕對不會給你自動生成這個r.java檔案,因為他要參照你的每張xml裡的資料來生成r.java,是以自然就生成不了了。雖然知道了原因但是問題頭疼,假如項目的layout
xml檔案有幾十個,這個時候怎麼辦,難道要一個一個xml的看嗎,呵呵,其實也不是,把console中的資訊clear一下,然後再clear項目一下,這個時候,console中會有很多紅色的資訊,參照這個肯定能準确的找到哪個檔案報錯了。
還有就是,修改warnings處的地方,把warnings消掉,一般都是sdk版本之類的問題,因為r.java 是sdk根據資源檔案生成的,如果sdk活着資源檔案有問題,都會報錯。
還有需要補充的是,當你的android.jar有了,r檔案也有了,jdk也對應到位了,但是還報錯,找到代碼發現,@override下有紅線,此時的做法可以先把jdk改為1.5,再改為1.6,就ok了,但發現,某些時候,這招也不管用那麼可以通過右鍵工程選擇android tools---->fix project properties解決。
再繼續補充說明,有時候當把工程部署到模拟器時,會碰到“failed to install xxx.apk on device 'emulator-5554'” 這時候可以

預設值是5000,設定成比如50000,就搞定了!
部分網友下載下傳的android工程,導入到eclipse時提示the project was not built since its build path is incomplete. cannot find the class file for java.lang.object. fix the build path then try building this project的提示,這樣的錯誤一般是java的jre沒有正确加載,當然了對于android來說相關的sdk庫也沒有正确加載,解決的方法很簡單,通過google推薦的android項目導入方法即可解決,如下:
在eclipse菜單的file=>new=>project選擇android=>android project 這一步時,選擇create project from existing source選項,這樣設定location為你要導入android項目的路徑即可
繼續補充說明:
當上述的一切都沒問題了,比如我的pyh引用framework,framework沒任何問題,pyh該做的也都做了,但pyh還是報錯,結果發現,原來是framewok引用的android包是2.3.3的,而pyh引用的是2.2,調成一緻就行了!
工程上右鍊-->properties-->android-->選擇sdk版本
這個主要是導入項目的屬性檔案中的sdk版本與目前開發環境的sdk版本不同,在這裡隻需要稍微修改一
下項目的屬性檔案就可以,在android項目的default.properties 中的修改target的值,如果是2.1版本就将target的值改為android 7, 如果開發環境是2.3版本,就将target改為android 9,總之這個值與使用的android sdk版本的關,這個修改完後,右鍵點選項目選擇 android tools->fix project properties,這時你會看到項目所引用的android.jar已經自動導入到項目中。或者修改完target的值後,隻要儲存一下就可以成功。