2012-12-31 10 views
17

मैं वर्तमान में अपनी सभी परियोजनाओं को एक्लिप्स से इंटेलिजे आइडिया में माइग्रेट कर रहा हूं।इंटेलिज: एंड्रॉइड-सपोर्ट-v4.jar एक्शन में शामिल किया गया हैरशेलॉक और प्रोजेक्ट => अवैध अर्ग्यूमेंट एक्सेप्शन

जब मैं ग्रहण का उपयोग कर रहा था, पैकेज केवल एक्शनबैरशॉक लाइब्रेरी में शामिल था और जब पुस्तकालय को मेरे प्रोजेक्ट में शामिल किया गया था, तो सब कुछ स्वचालित रूप से जोड़ा गया था।

इंटेलिजे के साथ, एक बार एंड्रॉइड-समर्थन-v4.jar एबीएस में जोड़ा जाता है, यह पर्याप्त नहीं लगता है, क्योंकि मेरे सभी आयात टूट गए हैं।

ActionBarSherlock का स्क्रीनशॉट (LibABS) आयात:

enter image description here

सब कुछ ठीक लगता है, सब SherlockActivity ठीक हैं, लेकिन सभी का समर्थन करने के लिए संबंधित सामान अपने आवेदन में मान्यता प्राप्त नहीं है:

java: /home/user/workspace/.... 
cannot access android.support.v4.app.FragmentActivity 
class file for android.support.v4.app.FragmentActivity not found 

तो, मुझे मैन्युअल रूप से जार को एक libs फ़ोल्डर में कॉपी करना होगा और इसे एक बार फिर से मेरे प्रोजेक्ट में शामिल करना होगा। अपने प्रोजेक्ट के आयात की

स्क्रीनशॉट:

enter image description here

आयात पहचाने जाते हैं, अखरोट मैं अब इस त्रुटि मिलती है:

Android Dex: [BeTrains-for-Android] UNEXPECTED TOP-LEVEL EXCEPTION: 
Android Dex: [BeTrains-for-Android] java.lang.IllegalArgumentException: already added: Landroid/support/v4/app/ShareCompat$ShareCompatImplJB; 

किसी भी मदद के लिए एक बहुत धन्यवाद।

+0

अब निर्भरताओं से 'android-support-v4.jar' को हटाने का प्रयास करें। यह पहले से ही 'लीबैब्स' निर्भरताओं के माध्यम से शामिल है। –

+0

समझाया गया है, मुझे एक मिलता है: जावा:/होम/उपयोगकर्ता/वर्कस्पेस/.... एंड्रॉइड.support.v4.app.FragmentActivity एंड्रॉइड.support.v4.app.FragmentActivity के लिए क्लास फ़ाइल नहीं मिला –

+0

पहले मामले में आपके पास दूसरे मामले में 'लीबैब्स की निर्भरता नहीं है। –

उत्तर

15

निर्भरता के क्षेत्र और निर्यात झंडे के साथ खेलने का प्रयास करें। विवरण के लिए इस पृष्ठ को देखें: dependency tab

+4

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

+1

एक एफवाईआई के रूप में, यह किसी भी संदर्भित परियोजना के भीतर _Export_ सेट करने की आवश्यकता के लिए उबलता है, जैसे कि एक्शनबैरशॉक जिसमें आप _that_ परियोजना संदर्भों का लाभ उठाना चाहते हैं, इस मामले में android-support-v4.jar। –

+15

मॉड्यूल के रूप में फेसबुक और एक्शनबारशेलॉक का उपयोग करते समय मुझे भी यही समस्या थी। मैंने दोनों मॉड्यूल में प्रदान करने के लिए स्कोप सेट करके इसे हल किया। – mparaz

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