Android學習——R檔案丟失異常原因匯總

來源:互聯網
上載者:User

標籤:

Console報錯:R.java was modified manually! Reverting to generated version!

 

引言:

 

R檔案丟失異常在java開發中是個比較常見的異常,造成這個異常的原因可能非常微小,但是給Android開發人員們造成的麻煩可是巨大的,當程式員們費盡千辛萬苦,找到自己錯在哪裡的時候,絕對會對自己的粗心大意而捶胸頓足,哀歎不已。

 

 

 

異常提示:

 

R.java was modified manually! Reverting to generated version!

 

或者項目中gen目錄下沒有產生R檔案,運行項目的時候會報錯

 

 

 

我的錯誤:

 

最近一次我出現這個錯誤是因為新電腦中的Eclipse中指向的Android sdk路徑中帶有中文路徑,項目workspace中也有中文路徑,在我將這兩個中文路徑改完之後,R檔案就重新恢複了。

 

比較坑的是另一個同事的錯誤原因,在他出現R檔案丟失異常之後,Android技術組長來看了半天,沒有發現哪裡錯誤,最後出動總監大人,總監大人花費了不少時間之後,終於發現錯誤原因:項目命名為Android_demo,但是其中的底線_是中文打出的,不是英文,所以出現了這個問題,同事的電腦是MAC,而我的電腦是windows,我並沒有在自己的電腦上找出怎麼打出中文的_,所以出現這個問題的機率還是很小的。

 

 

 

其他原因:

 

下面我們來說說其他可能造成R檔案丟失的原因:

 

 

 

1. 項目編碼不對,在匯入其他人項目的時候可能出現,在這裡要建議大家最好把自己的eclipse編碼設定為UTF-8最好,大部分項目都會使用這個編碼,如果設定這個編碼之後你匯入的項目還是出現亂碼、R檔案丟失之類的問題,那你可以換成GBK編碼,如果你要匯入的項目是其他編碼,那我只能祝你好運,多花點時間找出這是什麼編碼。

 

 

 

Eclipse設定預設編碼:Window——Preferences——General——workspace,然後在下方的Text file encoding中選擇Other——UTF-8(注意,這是一個輸入框,不僅僅是下拉選擇框,當你找不到GBK編碼的時候,可以手動輸入)即可。

 

 

 

Eclipse中單獨項目設定編碼:右鍵項目——Properties——Resource——Text file encoding,在Other中選擇UTF-8即可(這裡也可以手動輸入編碼).

 

 

 

2.xml(包括layout布局、values資源以及其他xml檔案)檔案出錯:可能是你xml格式出錯,也可能是你的xml中某些屬性忘了設定,甚至可能是你引用了錯誤的xml檔案。

 

解決辦法:xml格式出錯的時候一般res檔案夾及其子檔案夾都會出現一個小叉號,這時候就要好好檢查相應的報錯的xml檔案了,但是如果沒有報錯,那你可以試試將項目的xml檔案都恢複到沒有出現異常之前的版本,然後一一檢查你修改後的xml檔案。

 

 

 

3.xml檔案和drawable下資源檔不可以為大寫字母和數字

 

解決辦法:將相應檔案名稱改為小寫字母或者小寫字母和數字混搭的命名。

 

 

 

4.Eclipse或者adt外掛程式版本問題,在adt19版本的時候就出現過bug

 

解決辦法:升級最新已經修複bug的版本或者卸載現有版本,使用成熟的舊版本外掛程式,建議使用android開發官網的ADT。

 

 

 

5.項目sdk版本太低或者版本不對

 

解決辦法:右鍵項目——properties——Android,選擇相應的sdk版本,點擊Apply——OK即可。

 

 

 

下面還有幾種解決措施可以 協助大家修複R檔案丟失異常:

 

  • 選擇Eclipse功能表列——Project,點擊Build Automatically,使其處於勾選狀態即可,這樣在你修改完項目之後Eclipse就會及時的幫你自動編譯,跟新R檔案;
  • 選中項目,Project——Clean...,這樣會清除掉舊版本的各種組建檔案,併產生最新的項目組建檔案,跟新R檔案;
  • 右鍵項目,Android Tools——Fix Project Properties,會修複項目中的問題。

 

文章引用:http://blog.csdn.net/zhufuing/article/details/22228207

 

Android學習——R檔案丟失異常原因匯總

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.