2012-12-01 16 views
14

में आईडी उत्पन्न नहीं मैं हाल ही में IntelliJ विचार करने के लिए बंद कर 12.IntelliJ विचार R.java

अब Android पर प्रोजेक्ट बना लिया और तुरंत एक समस्या में पड़ गए: R.java

में

परियोजना के पुनर्निर्माण नहीं उत्पन्न आईडी सहायता नहीं करता है।

शायद इंटेलिजे आइडिया में कोई सूक्ष्मता मुझे ज्ञात नहीं है?

त्रुटि:

12-01 16:08:15.067: ERROR/AndroidRuntime(7108): FATAL EXCEPTION: main 
android.content.res.Resources$NotFoundException: String resource ID #0x1 
at android.content.res.Resources.getText(Resources.java:266) 
at android.widget.TextView.setText(TextView.java:3624) 
at com.example.poem_new.MyActivity.invalidateCounters(MyActivity.java:41) 
at com.example.poem_new.MyActivity.access$000(MyActivity.java:11) 
at com.example.poem_new.MyActivity$1.onTextChanged(MyActivity.java:29) 
at android.widget.TextView.sendOnTextChanged(TextView.java:8027) 
at android.widget.TextView.handleTextChanged(TextView.java:8074) 
at android.widget.TextView$ChangeWatcher.onTextChanged(TextView.java:8454) 
at android.text.SpannableStringBuilder.sendTextChange(SpannableStringBuilder.java:892) 
at android.text.SpannableStringBuilder.change(SpannableStringBuilder.java:352) 
at android.text.SpannableStringBuilder.change(SpannableStringBuilder.java:266) 
at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:443) 
at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:420) 
at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:29) 
at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:669) 
at android.view.inputmethod.BaseInputConnection.commitText(BaseInputConnection.java:188) 
at com.android.internal.widget.EditableInputConnection.commitText(EditableInputConnection.java:149) 
at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:315) 
at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:85) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:154) 
at android.app.ActivityThread.main(ActivityThread.java:4945) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:511) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
at dalvik.system.NativeStart.main(Native Method) 

R.java फ़ाइल रिक्त है:

/* This stub is for using by IDE only. It is NOT the R class actually packed into APK */ 
public final class R { 
} 
+0

को संकलित करना चाहिए संकलक विकल्प अनुभाग –

+0

अनचेक में आप "बाहरी निर्माण का उपयोग" अनचेक कर सकते हैं। मदद नहीं की ... – Val

+0

मेरे पास यह वही समस्या है। परियोजना Intellij 11 में ठीक बनाता है, लेकिन 12 –

उत्तर

13

क्या आप देख रहे हैं शायद आइडिया 12 में से डिजाइन व्यवहार है:

http://youtrack.jetbrains.com/issue/IDEA-99045

"It is behaviour of IDEA 12, it doesn't generate full R.java in gen folder, it generates it in the IDEA's system dir during compilation."

आपके मामले में, ~/.IntelliJIdea12\system\compiler\YOUR_PROJECT_NAME.RANDOM_STRING\.generated\aapt\YOUR_PROJECT_NAME.RANDOM_STRING\production\package\R.java

पर गौर

यह फ़ाइल अद्यतित होनी चाहिए और इसमें आपके द्वारा अपेक्षित सभी आईडी होनी चाहिए।

इसे किसी भी प्रकार के आंतरिक आइडिया जादू द्वारा स्वत: पूर्णता, उपयोग खोज आदि के आइडिया की कार्यक्षमताओं पर भी लगाया जाना चाहिए।

खाली आर। जावा सामान्य है (हालांकि भ्रामक है, और जेटब्रेन इस व्यवहार को बदलने का इरादा रखता है)।

+4

एफवाईआई मैंने ~/IdeaIC12/system/compile-server/PROJECT_NAME_STRING/android/gener_sources/APP_NAME/aapt/com/packagename/r.java में अपना आरजेवा पाया। – Murphy

+0

धन्यवाद! यह मुझे खोजने में पागल हो रहा था। यह एक बिल्कुल भयानक प्रणाली है क्योंकि कुछ त्रुटियां आर आईडी को देखने पर निर्भर हैं। – Anthony

-1

यह समस्या यदि आपका परियोजना जावा संकलक अपने Android जावा से विभिन्न परियोजना की स्थापना और साफ compiler.Change है आ रहा है परियोजना काम कर रही है। यदि समस्या तो गोटो परियोजना गुण> एंड्रॉयड सुलझाने नहीं है -> किसी भी एंड्रॉयड संस्करण चयन तो संकलन

+0

इंटेलिजे आइडिया में प्रोजेक्ट को कैसे साफ किया जाए? – Val

+0

प्रोजेक्ट मेनू विकल्प पर जाएं स्वच्छ का चयन करें और अपनी परियोजना या सभी प्रोजेक्ट प्रोजेक्ट का चयन करें-> क्लीन-> सिंगल/सभी –

+0

इंटेलिजे आईडीईए प्रोजेक्ट का ढांचा हो सकता है? मुझे "प्रोजेक्ट मेनू" नहीं मिल रहा है – Val

-6

जहां "R.id" का उपयोग कर रहे टिप्पणियों में कोड की लाइनों करें और फिर अपनी परियोजना को चलाते हैं।

फिर अगली बार टिप्पणियां हटाएं और इसे फिर से चलाएं।

उम्मीद है कि

यह काम करेंगे

+0

यह मेरी मदद क्यों कर सकता है? यह एक हल नहीं है। – Val

2

मैंने एक ही समस्या में भाग लिया है। ग्रहण से थक गए, मैंने एक नया आईडीई आज़माने का फैसला किया। मैंने एंड्रॉइड के लिए और एक नए मॉड्यूल के अंदर एक नया प्रोजेक्ट बनाया (संकलन और चलाने के लिए एंड्रॉइड उदाहरण शुरू करने की कोशिश कर रहा है)। जब मैंने एक नया मॉड्यूल बनाया, तो उसने जेन समेत सामान्य निर्देशिकाएं बनाईं। मैंने स्रोत फ़ाइलों, मैनिफेस्ट और res निर्देशिका की प्रतिलिपि बनाई। इस मुद्दे में भागो, क्या आईडीईए यह नहीं समझ सका कि आर क्या था। एक स्पष्ट निर्माण जनरल दोबारा प्रकट करने के बाद

android.R
  • हटाने जनरल निर्देशिका
  • की

    • निकालें आयात और परियोजना ठीक था: मैं निम्नलिखित किया था।

      होजे यह किसी की मदद करता है।

    2

    सभी इंटेलिज विंडोज़ बंद करना, प्रोजेक्ट फ़ोल्डर का नाम बदलना और इसे खोलने से मेरी समस्या हल हो गई।

    अद्यतन:

    Intellij उन दस्तावेजों में उसके अपने फ़ोल्डर में उत्पन्न फ़ाइलों को बचाने के लिए जाता है। तो इस स्थिति के लिए एक और तरीका कैश फ़ाइलों को अमान्य करना है। फ़ाइल मेनू पर जाएं और कैश को अमान्य करें का चयन करें, फिर इंटेलिज पुनरारंभ होगा और यह कैश और अन्य आवश्यक फ़ाइलों को पुन: उत्पन्न करेगा और सब कुछ ठीक रहेगा!

    0

    ऐसा लगता है कि आपके लेआउट में इसमें कुछ भी नहीं है। यदि आप अपनी प्रोजेक्ट में अपनी res/लेआउट निर्देशिका का विस्तार करते हैं, तो main.xml फ़ाइल पर डबल क्लिक करें। बस एक बटन या कुछ जोड़ें और इसे एक आईडी दें। यह

    संबंधित मुद्दे