刪除gen目錄下的R.java文件後,重新編譯程序後無法生成R。java。
查看res目錄下沒有任何xml文件編寫錯誤的提示。執行Project—Clean也無法解決此問題。
在抓狂到想要砸電腦的時候,突然發現Console窗口下已經給出了出錯原因,只不過沒有注意到。
Console下打印錯誤信息:
- [2012-08-08 18:26:54 - ChangHong_HuiYuanBao] res\layout\Copy of shuaka.xml: Invalid file name: must contain only [a-z0-9_.]
- [2012-08-08 18:26:54 - ChangHong_HuiYuanBao] res\layout\Copy of shuaka.xml: Invalid file name: must contain only [a-z0-9_.]
- [2012-08-08 18:26:54 - ChangHong_HuiYuanBao] res\layout\Copy of shuaka.xml: Invalid file name: must contain only [a-z0-9_.]
- [2012-08-08 18:29:43 - ChangHong_HuiYuanBao] res\layout\Copyofshuaka.xml: Invalid file name: must contain only [a-z0-9_.]
- [2012-08-08 18:31:43 - ChangHong_HuiYuanBao] res\layout\Copyofshuaka.xml: Invalid file name: must contain only [a-z0-9_.]
原因是因為我備份了一個xml布局文件,直接復制粘貼以後,eclipse會默認將其命名為Copy of ****.xml 但是Android要求xml布局文件名只能包含小寫字母a-z數字0-9以及下劃線_,因為文件名中C大寫了,所以編譯無法通過,自然也就無法生成R.java文件。