R.java
एक फ़ाइल है जो आपके एप्लिकेशन को बनाते समय एंड्रॉइड एक्लिप्स प्लगइन्स बनाता है। R.java
"जीन" निर्देशिका के तहत बनाया गया है। यह फ़ाइल "रेस" निर्देशिका में जानकारी से उत्पन्न होती है। यदि आप चयनित मेनू पर "प्रोजेक्ट" -> "क्लीन ..." चलाते हैं, तो यह हटा देगा और फिर R.java
फ़ाइल को पुन: उत्पन्न करेगा ।
समस्या "R को हल नहीं किया जा सकता" तब होता है जब आप AndroidManifest.xml
फ़ाइल में अपना पैकेज का नाम बदलते हैं । यह "जनरल" निर्देशिका के तहत एक उपनिर्देशिका बनाने के लिए आपके एंड्रॉइड पैकेज नाम का उपयोग करता है जहां यह R.java
फ़ाइल संग्रहीत करता है।
ग्रहण को साफ निष्पादित करने में समस्या हो सकती है, क्योंकि यह उलझन में है कि R.java
फ़ाइल कहाँ है जब आपने एंड्रॉइड पैकेज का नाम बदल दिया है। आप gen
अपने नए पैकेज के नाम से मेल खाने के लिए या तो उपनिर्देशिका का नाम बदल सकते हैं, या आप अपने पैकेज का नाम वापस पुराने नाम में बदल सकते हैं। साफ करें और फिर पैकेज का नाम अपने इच्छित नए नाम में बदलें। यह सबसे अच्छा काम करता है यदि आप पैकेज के नाम को बदलते समय ग्रहण करने से रोकने की कोशिश करते हैं। "प्रोजेक्ट" मेनू के तहत "बिल्ड टू ऑटोमैटिकली" और जब "क्लीन ..." डायलॉग को अनचेक करें तो डायलॉग पूछता है कि क्या इसे "तुरंत निर्माण शुरू करें" बॉक्स को अनचेक करें ताकि आप बदलते समय इसे बनाने की कोशिश न करें। पैकेज का नाम। आपके द्वारा नाम बदलने के बाद आप फिर से "बिल्ड ऑटोमेटिकली" वापस चालू कर सकते हैं।
ध्यान दें कि यदि आपका AndroidManifest.xml
फ़ाइल पैकेज नाम आपके जावा पैकेज के नाम से मेल नहीं खाता है, तो ग्रहण स्वचालित रूप से एक "आयात </ strong> पैकेज>> .R" जोड़ देगा। आपकी सभी .java
फ़ाइलों में पंक्ति जिसमें R का कोई संदर्भ है। यदि आप अपना AndroidManifest.xml
पैकेज नाम बदलते हैं , तो कभी-कभी ग्रहण इन सभी आयातों को अद्यतन नहीं करता है। यदि ऐसा होता है, तो अपने जावा पैकेज में से किसी एक में अपने नए पैकेज के नाम में आयात विवरण को बदलने के लिए एक्लिप्स रीफैक्टरिंग ( ALT+
Shift+ R) का उपयोग AndroidManifest.xml
करें। ऐसा करना सबसे अच्छा है जब आपने "बिल्ड ऑटोमेटिकली" अक्षम कर दिया हो।