2012-08-29 13 views
21

मेरे पास पूरी तरह से काम करने वाली परियोजना है (इसे डिस्क पर "mygame" कहा जाता है) जिसमें कई गतिविधियां होती हैं। जिस गतिविधि को पहले कहा जाता है उसे "लॉन्चर" कहा जाता है। मैं प्रोजेक्ट को "com.mycompany.mygame" कहलाता हूं, लेकिन जब मैं ग्रहण में एक आयात प्रोजेक्ट करता हूं और अपनी प्रोजेक्ट की मूल निर्देशिका का चयन करता हूं, तो एक संवाद प्रकट होता है कि इस निर्देशिका में स्थित प्रोजेक्ट "कॉम" है .mycompany.mygame.launcher "इसे बदलने का कोई तरीका नहीं है। मेरा सवाल यह है कि यह निर्धारित करने के लिए ग्रहण क्या है कि मेरे प्रोजेक्ट का नाम "com.mycompany.mygame.launcher" है? क्या यह मैनिफेस्ट में कुछ है?ग्रहण आपके प्रोजेक्ट का नाम कैसे जानता है?

+1

आयात फ़ंक्शन को हाल ही में एडीटी अपग्रेड (आर 20 अगर मुझे याद है) में से एक के बाद संशोधित किया गया है और अब आप परियोजना आयात चरण में प्रोजेक्ट नाम संपादित करने की अनुमति नहीं देते हैं। यदि आप अपने स्रोत के साथ .classpath और .project रखते हैं, तो आप 'फ़ाइल - आयात .. - सामान्य - वर्कस्पेस में मौजूदा प्रोजेक्ट्स' का उपयोग कर सकते हैं, अपनी परियोजना आयात करें जो को प्रोजेक्ट से डिफ़ॉल्ट प्रोजेक्ट नाम के रूप में उठाएगा। कॉन यह ग्रहण उत्पन्न होता है। क्लासपाथ और .project अलग ओएस या ग्रहण संस्करण पार करते समय काम नहीं कर सकता है। – yorkw

+0

क्या यह पैकेज आपके एंड्रॉइडManifest.xml में कहीं भी है? – Hartok

+0

शीर्ष के ठीक ऊपर यह कहता है: पैकेज = "com.mycompany.mygame" – Mick

उत्तर

14

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

8

क्या आपका मतलब था कि परियोजना का नाम बदल गया? यदि ऐसा है, तो आप अपने प्रोजेक्ट के रूट फ़ोल्डर में स्थित .project फ़ाइल देख सकते हैं।

+0

".project" फ़ाइल में एक पंक्ति mygame है और निश्चित रूप से टेक्स्ट com.mycompany.mygame.launcher नहीं है, इसलिए मैं अभी भी कोई नहीं हूं बुद्धिमान :-( – Mick

+0

क्या मैं इस तरह समझ सकता हूं: आपका प्रोजेक्ट नाम 'mygame' है, और डिफ़ॉल्ट पैकेज' com.mycompany.mygame' है। लेकिन जब आप इस प्रोजेक्ट को डिफ़ॉल्ट पैकेज को ग्रहण करने के लिए आयात करते हैं तो 'com.mycompany' में बदल जाता है .mygame.launcher'? यदि हां, तो क्या कोई फ़ोल्डर है जिसका पथ '% PROJECT_ROOT%/src/com/mycompany/mygame/launcher' या'% PROJECT_ROOT%/launcher'? – wodong

+0

थीर कोई "लॉन्चर" निर्देशिका नहीं है। ".java" फ़ाइलें% PROJECT_ROOT%/src/com/mycompany/mygame/ – Mick

4
ग्रहण में

, सही अपनी परियोजना एंड्रॉयड उपकरण क्लिक करें -> नाम बदलें आवेदन पैकेज, नाम बदलने के

+0

यह मान्य हो सकता है - लेकिन वास्तव में मेरे प्रश्न का उत्तर नहीं देता है। – Mick

+1

यह आपके प्रश्न का उत्तर क्यों नहीं दे रहा है ?, कृपया अधिक जानकारी प्रदान करें –

+1

असल में मेरे पास एक से दूसरे पीसी में एक से दूसरे पैकेज हैं, मैं एक बार फिर से इसे ठीक कर सकता हूं, तो मैं नाम बदलने की प्रक्रिया नहीं करना चाहता हूं और सभी के लिए ... इसके अलावा मैंने ग्रहण के साथ एक और दूसरे तरीके से इतनी चिड़चिड़ाहट की है कि जितना अधिक मैं यह बेहतर तरीके से काम कर सकता हूं कि भविष्य में चीजें गलत होने पर मैं सामना करूँगा। इसके अलावा मैं सिर्फ उत्सुक हूँ। – Mick

3

com.mycompany.mygame करने के लिए अपने मैनिफ़ेस्ट फ़ाइल में प्रकट टैग में नाम विशेषता पैकेज दिखाएगा name.Also ग्रहण में पैकेज एक्सप्लोरर व्यू पैकेज नाम दिखाएगा। उदाहरण के लिए यदि आपका पीकेजी नाम com.cmpny.game है, तो आपके src फ़ोल्डर में src> com> cmpny> game> फ़ोल्डर्स होगा और इसके अंदर आपका कोड सहेजा जाएगा।

2

मुझे लगता है कि यह निर्देशिका संरचना की वजह से उसी प्रकार के सभी अनुप्रयोगों के लिए है, क्योंकि सभी एप्लिकेशन में रूट फ़ोल्डर पर कुछ फ़ाइलें/फ़ोल्डर शामिल हैं जो हमारे एप्लिकेशन का नाम है जैसे एंड्रॉइड प्रोजेक्ट में फाइलें हैं .project और .classpath और फ़ोल्डरों .myeclipse src bin .settings आदि

3

हर परियोजना में फ़ाइल .project कहा जाता है जो इस परियोजना का नाम

<?xml version="1.0" encoding="UTF-8"?> 
<projectDescription> 
    <name>PROJECTNAME</name> 
    <comment></comment> 
    <projects> 
    </projects> 
    <buildSpec> 
    ........ 
    </buildSpec> 
    <natures> 
    ....../natures> 
</projectDescription> 
1

के लिए जिम्मेदार प्रोजे में है वहाँ की तरह ts निर्देशिका है। ग्रहण द्वारा बनाई गई प्रोजेक्ट फ़ाइल! जब हम परियोजना आयात करते हैं तो इस फ़ाइल की खोज होती है और इस फ़ाइल से परियोजना से संबंधित जानकारी एकत्र करती है। इसे इस तरह से किया गया है। यदि आप इस फ़ाइल को ग्रहण की जांच के उद्देश्य से हटाते हैं तो उस निर्देशिका को एक परियोजना के रूप में नहीं पहचाना जाएगा!

4

आप ग्रहण 'कार्यक्षेत्र में मौजूदा प्रोजेक्ट आयात' सुविधा का उपयोग क्यों कर रहे हैं?

आपको 'नई एंड्रॉइड प्रोजेक्ट -> मौजूदा स्रोत से परियोजना बनाएं' सुविधा का उपयोग करना चाहिए। (मुझे नहीं पता कि ये विकल्प आपके ग्रहण में वास्तव में कैसे दिखाई देते हैं, इसलिए आपको उन्हें ढूंढना होगा) इस तरह आप कर सकते हैं इसे किसी भी चीज़ का नाम दें।

आपका दूसरा विकल्प हो सकता है: कार्यक्षेत्र में मौजूदा प्रोजेक्ट आयात करें (जैसा कि आप पहले से कर रहे हैं)। प्रोजेक्ट का नाम छोड़ दें, फिर आयात प्रक्रिया को पूरा करने के बाद, आप प्रोजेक्ट का नाम बदल सकते हैं जो भी आप चाहते हैं

6

आपकी समस्या के समान, जब मैं Import ->Android ->Existing Android code वर्कस्पेस में नामकरण बंद है।

उन लोगों के लिए जिन्होंने टिप्पणी के बारे में टिप्पणी की और उलझन में थे, क्या हो रहा है कि ग्रहण परियोजना को पहली गतिविधि (नामस्थान समेत) के नाम के रूप में आयात करता है।

यह com.company.app_name.first_activity_in_the_manifest

मैं थोड़ी देर के लिए यह समस्या हो रही किया गया है के रूप में परियोजना आयात करता है। मुझे अपनी परियोजना के लिए समाधान मिला। क्योंकि यह एक गिट रेपो है, मुझे Import ->Git ->Projects from Git ->local करना है।

फिर यह सही तरीके से आयात करता है, और यहां मौजूद कुछ समाधानों का दुष्प्रभाव नहीं है, मौजूदा कोड को एक नई परियोजना में आयात करना (जो शायद गिट रेपो में मेरा लिंक हटा देगा)।

3

पैकेज एक्सप्लोरर में एडीटी प्रदर्शित करता है नाम प्रोजेक्ट फ़ाइल में नाम नहीं हो सकता है। इसे बदलने के लिए, नाम -> रिएक्टर -> नाम बदलें पर राइट क्लिक करें। नाम "अद्यतन संदर्भ" के साथ नाम बदलें। सुनिश्चित करें कि आप जिस नाम को चाहते हैं वह आपके पैकेज एक्सप्लोरर सूची के लिए अद्वितीय है।

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