R.java was modified manually! Reverting to generated version!
進入 eclipse後clipse Menu > Projects > clean
這麼做就把R檔案刪了,但是別擔心,重新整理專案,R檔案會自動更新的。如果不更新的話一定是程式中有錯誤,一般情況下是命名問題。
我遇到的情況是:(1)不同的layout xml檔案中控制元件命名衝突(我當時就是直接複製的)。只要把相關的控制元件命名區別開來,重新整理專案,R檔案就會自動生成。
(2)而且相關的目錄檔案不能刪除,res資料夾中只能包含資料夾,不能有檔案或圖片存在。
不管怎麼樣,只要res檔案沒有錯誤,R檔案會自動生成。
Android 在開發中會自動生成一個 R.java 檔案,這個檔案是自動生成的,最好不要去改。不過有時候這個 java 檔案會跟我們捉迷藏,在程式中 R.xx.xxx 會出現經常報錯現象。其實只要對著工程點選滑鼠右鍵 選擇Build Project,R.java 檔案又回來。這樣R.xx.xxx 就能 X 的出來了。
匯入其他Android時出錯分析
最近幾天學習android ,學習時候難免要匯入一些示例,目的為了更加了解android各種API用法,順便也可以學習下別人程式碼的寫法。可是匯入android原始碼後,基本都有錯誤,R.java也不會自動生成,因為是第一次匯入工程,工程有錯R.java就不會自動生成了,工程有錯誤,當然模擬器就不能啟動,也就看不到效果。隨後網上找各種解決方法,網上解決方法主要有這幾種
1、選擇選單 Project >> Clean ,前提是勾選上 Bulid Automatically(自動構建部署) ,點Clean後會重新構建專案,因為一般情況下,R.java檔案在這個時候會重新更新生成一邊,如果工程有錯,就不會自動生成。
Bulid Automatically設定:window->preferences->workspace下
2、選擇工程,右鍵 Android Tools >> Fix Project Properties 這個操作有時候可以修正一些錯誤,但我的不行。
3、還有的說法是重新建一個空的工程,然後把這裡面的程式碼,資原始檔按照對應的包路徑什麼的拷進去,然後重新生成一邊,這種方法,也想當於是第一種方法,都是重新構建部暑,性質一樣的。
以上幾種方法都試了,R.java依舊沒出現,整個工程還是一大堆錯誤。隨便點了一個有錯誤的佈局XML檔案,看到這樣一個錯誤程式碼android:layout_height="match_parent" , 之前我都用1.5/1.6/2.1 版本的SDK layout_height裡面沒有看到match_parent這個屬性,然後問群一個兄弟說這個屬性是2.X版本的,想了下,是不是因為工程的SDK版本和eclipse預設的SDK版本問題呢,於是選擇工程,右鍵 Properties >> Android
然後看到右邊的一塊 Target Name, 我的是選中 Android 1.5,然後換了一個 2.1 的 ,點選Appply ,工程自動構建,看到錯誤少了一些,換到2.2,重新構建,錯誤沒了,久未解決的問題解決了,R.java也出來了,一個字高興啊,啟動模擬器一切正常。
總結下當匯入其它原始碼時候,首先要保證原始碼的SDK版本和你eclipse預設版本是否一致。
檢視原始碼版本辦法:開啟default.properties 檔案,看target=android-7 這後面這個數是多少。
版本對應關係:target=android-3 <---> android 1.5 ,target=android-4 <---> android 1.6 ,
target=android-7 <---> android 2.1 ,target=android-8 <---> android 2.2 其它的自己測試下。
一張圖片的名字中有一個空格,原來在android資原始檔中規定圖片檔案的名字中不能有大寫字母 、第一個符號不能是數字。有時檔案出錯,把檔案刪除,然後重新匯入可能就解決問題了
相關文章
- PostgreSQL DBA(53) - PG 12 Generated columnsSQL
- UDI-03113: operation generated ORACLE error 3113OracleError
- Loop Subdivision與Modified Butterfly SubdivisionOOP
- Manually Evolve and Accept SQL PLAN BASELINES in Oracle 12cSQLOracle
- PG: Estimate last modified or read time of a tableAST
- E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packagesErrorPackage
- Expires, Last-Modified, Etag快取機制AST快取
- When should reread of cl_crm_bol_entity and $scope.$apply be called manuallyAPP
- TensorFlow 報錯 CUDA driver version is insufficient for CUDA runtime version
- HTTP 200 OK和HTTP 304 Not modified的由來HTTP
- IDBDatabase.versionDatabase
- MySQL Version TokensMySql
- 理解Semantic Version
- 解決The given version [xx] is not supported, only version 1 to 10 is supported in this buildUI
- ORA-39358: Export dump file version 12.1.0 not compatible with target version 11Export
- PJSIP version 2.7.2 For AndroidJSAndroid
- JDK版本 - Major VersionJDK
- Reverse Card (Hard Version)
- Prefix Flip (Easy Version)
- Catch the Mole(Easy Version)
- Maven多模組中,parent version如何採用自定${version}表示Maven
- iOS--Unsupported swift versioniOSSwift
- General->Identity->VersionIDE
- 165. Compare Version Numbers
- Leetcode 165 Compare Version NumbersLeetCode
- k8s中問題: waiting for a volume to be created, either by external provisioner ****or manually created by system administratorK8SAI
- Mongoose-modified-at 時間自動記錄外掛介紹Go
- git操作---將staged狀態檔案回退到modified狀態Git
- RxHttp 一條鏈傳送請求之註解處理器 Generated API(四)HTTPAPI
- linux 核心 LINUX_VERSION_CODE 和 KERNEL_VERSION 宏定義 版本資訊Linux
- warning: already initialized constant FileUtils::VERSIONZed
- Project facet Java version 1.8 is not supportedProjectJava
- Hadoop VERSION檔案誤刪Hadoop
- conda support env+python versionPython
- C2. Magnitude (Hard Version)
- C2. Potions (Hard Version)
- Internet Protocol version 4 (IPv4)Protocol
- Kafka叢集安裝Version2.10Kafka
- https Java SSL Exception protocol_versionHTTPJavaExceptionProtocol