प्रतिक्रिया मूल: Android प्रोजेक्ट नहीं मिला। शायद पहले प्रतिक्रिया-मूलक Android चलाएं?


88

मेरी प्रतिक्रिया-मूल परियोजना में एक मुद्दा था जो पहले ठीक काम कर रहा था लेकिन अचानक इसने काम करना बंद कर दिया। जब भी मैंने कमांड का उपयोग किया:

react-native run-android

मुझे एक त्रुटि मिल रही थी :

Android प्रोजेक्ट नहीं मिला शायद पहले प्रतिक्रिया-मूलक Android चलाएं?

मैंने दौड़ने की कोशिश की :

react-native android

लेकिन यह कहा:

Unrecognized command 'android' Run react-native --help to see list of all available commands

कोशिश करने के बाद:

D:\ProjectRoot\ReactNativeProjects\AwesomeProject>react-native eject

दी गई त्रुटि थी:

D: \ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules (48ms) ऐप में सीलिंग्स के लिए फ़ोल्डरों को स्कैन nameकरना app.jsonप्रोजेक्ट नाम को परिभाषित करने के लिए कॉन्फ़िगरेशन फ़ाइल में परिभाषित किया जाना चाहिए । इसमें कोई स्थान या डैश नहीं होना चाहिए।

यह app.json फ़ाइल है:

{
  "expo": {
    "name": "AwesomeProject",
    "description": "A very interesting project.",
    "slug": "AwesomeProject",
    "privacy": "public",
    "sdkVersion": "30.0.0",
    "platforms": ["ios", "android"],
    "ios": {
      "supportsTablet": true
    },
    "android": {
      "package": "com.project.first"
    },
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/images/icon.png",
    "splash": {
      "image": "./assets/images/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ]
  }
}

1
यदि एंड्रॉइड फ़ोल्डर रूट डायरेक्टिव में गायब है, तो प्रतिक्रिया-देशी इजेक्ट चलाएं।
खुर्शीद अंसारी

1
@ कुर्शीद अंसारी ने आपका समाधान काम नहीं किया, जैसा कि त्रुटि आ रही है: "प्रोजेक्ट नाम को परिभाषित करने के लिए ऐप नाम में परिभाषित होना चाहिए। प्रोजेक्ट नाम को परिभाषित करने के लिए फ़ाइल को कॉन्फ़िगर करें" भले ही नाम परिभाषित किया गया हो। कृपया अद्यतन प्रश्न देखें।
अभिनव सक्सेना

जवाबों:


155

मैंने इस सवाल को उठाया और अपने आप को जवाब दिया क्योंकि मुझे लगा कि यह दूसरों को मदद करेगा जो इसी तरह के मुद्दे का सामना कर रहे हैं। मैंने इसके पीछे के वास्तविक कारण का पता लगाने के लिए बहुत संघर्ष किया क्योंकि टर्मिनल में दिखाई गई त्रुटि सटीक नहीं थी।

समस्या को हल करने के लिए कृपया प्रतिक्रिया-मूलक पैकेज को अपग्रेड करें।

  1. प्रोजेक्ट रूट पर जाएं ।

  2. कमांड प्रॉम्प्ट में प्रतिक्रिया मूल पैकेज को अपग्रेड करेंटाइप करके करें:

    react-native upgrade

  3. फिर कमांड प्रॉम्प्टy (Yes) में लिखकर सभी फाइलों को अपडेट करना स्वीकार करें ।

संदर्भ: https://github.com/facebook/react-native/issues/9312


9
दिन बच गया :)
मुहम्मद

रिएक्ट देशी पैकेज कहाँ पाया जाता है? कृपया स्पष्ट कदम उठाएँ
लुटाया हुज़ैफा इदरीस

@LutaayaHuzaifahIdris जैसा कि उत्तर में बताया गया है, प्रतिक्रिया मूल पैकेज को प्रोजेक्ट रूट पर अपग्रेड किया जा सकता है। तो, कमांड प्रॉम्प्ट खोलें और प्रोजेक्ट रूट पर जाएं। फिर प्रतिक्रिया देशी पैकेज को अपग्रेड करें।
udai

यह उन्नत प्रतिक्रिया-मूलक है जो मैं नहीं चाहता था।
खुर्शीद अंसारी

मेरा कार्य समाधान नीचे है, उपरोक्त में से कोई भी मेरे लिए काम नहीं कर रहा है :: 1. एंड्रॉइड स्टूडियो में AVD प्रबंधक खोलें और एक आभासी डिवाइस चलाएं (आप बाद में एएस बंद कर सकते हैं) 2. CMD अपने प्रोजेक्ट फ़ोल्डर में टाइप करें और 'एक्सपो स्टार्ट' 3 टाइप करें। एक बार एक्सपो ने विकल्प 2 शुरू कर दिया है, जो है "प्रेस फॉर ए एंड्रॉइड एमुलेटर" यह वर्चुअल डिवाइस पर एक्सपो को स्थापित करेगा और आप वहां से परीक्षण कर सकते हैं
पॉल गवामांडा

23

मुझे पता है कि यह एक पुराना सवाल है, लेकिन उनमें से किसी भी समाधान ने मेरे लिए काम नहीं किया और शायद मेरे जैसे अन्य भी हैं। मैंने इस कमांड को चलाने से पहले अपनी समस्या हल कीrun-android

react-native eject

1
किसी कारण से यह मेरे लिए भी चाल चली, मैंने "प्रतिक्रिया-देशी-गिट-अपग्रेड" का उपयोग करके प्रतिक्रिया देशी उन्नयन के नए संस्करण की कोशिश की, जैसा कि आपने "प्रतिक्रिया-देशी उन्नयन" चलाया, यह मेरे लिए काम नहीं किया।
ज़ैद कुरैशी

2
यह कमांड आपके प्रोजेक्ट में एंड्रॉइड और आईओएस फोल्डर बनाते हैं
खुर्शीद अंसारी

1
मुझे लगता है कि यह उचित जवाब है। केवल इसलिए नहीं कि यह मेरे लिए काम करता है, बल्कि इसलिए कि डॉक्स से मेरी समझ से, यह ऐसा करने का एक इच्छित तरीका है और इसलिए अन्य दुष्प्रभावों के बिना।
दान


16

अपने रिएक्टिव नेटिव प्रोजेक्ट रूट डायरेक्टरी को खोलें और Android -> ऐप -> बिल्ड -> इंटरमीडिएट -> साइनिंग_कॉन्फ़िग -> डिबग -> आउट -> साइन-इन करें। साइन-इन-कॉन्फ़िग को हटाएं। इस फ़ाइल को फिर से आज़माएं

या

1) कभी-कभी अगर हमारे पास प्रतिक्रिया के पुराने संस्करण देशी हैं और कुछ नए स्थापित पैकेज खुराक पुराने संस्करण का समर्थन नहीं करते हैं। फिर आपको प्रतिक्रिया-देशी उन्नयन कमांड का उपयोग करके प्रतिक्रिया देशी परियोजना को अपडेट करना होगा।

  1. वर्तमान परियोजना को नए संस्करण में अद्यतन करने के बाद इस त्रुटि को हल किया जाना चाहिए।

9

कमांड (गैर-एक्सपो) का उपयोग करके परियोजना शुरू करना सुनिश्चित करें:

react-native init <your-project-name>

यदि मौजूदा फ़ोल्डर है, तो अनुसरण करें:

प्रतिक्रिया-मूलक बेदखल करना


प्रतिक्रिया-मूल के नवीनतम संस्करण में यह सुझाव तब आता है जब आप कमांड जारी करने का प्रयास करते हैं:

react-native eject

D: \ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules (48ms) ऐप में सीलिंग्स के लिए फ़ोल्डरों को स्कैन nameकरना app.jsonप्रोजेक्ट नाम को परिभाषित करने के लिए कॉन्फ़िगरेशन फ़ाइल में परिभाषित किया जाना चाहिए । इसमें कोई स्थान या डैश नहीं होना चाहिए।

अब जब आप निम्नलिखित आदेश जारी करते हैं:

D:\ProjectRoot\ReactNativeProjects\AwesomeProject>react-native upgrade

निम्नलिखित दिखाता है:

D: \ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules (56ms) में सहानुभूति के लिए फ़ोल्डर्स को स्कैन करना आपको Git पर आधारित नए अपग्रेड टूल का उपयोग करने पर विचार करना चाहिए। यह स्वचालित रूप से अधिकांश संघर्षों को हल करके उन्नयन को आसान बनाता है। इसका उपयोग करने के लिए: - प्रतिक्रियाशील मूल के पुराने संस्करण पर वापस जाएं - "npm इंस्टॉल -g प्रतिक्रिया-देशी-गिट-अपग्रेड" चलाएं - "प्रतिक्रिया-देशी-गिट-अपग्रेड" देखें https://facebook.github.io /react-native/docs/upifting.html "package.json" में प्रतिक्रिया-मूल संस्करण "नोड_मॉड्यूल्स" में स्थापित संस्करण से मेल नहीं खाता है। इसे ठीक करने के लिए "npm इंस्टॉल" चलाने का प्रयास करें। निरस्त किया जा रहा।

फेसबुक प्रतिक्रिया-देशी आदेशों के सुझावों में, एक स्पष्ट समाधान है।

ये कमांड वर्तमान संस्करण की जांच करते हैं और यह आवश्यक है कि अपडेट अपडेट है या नहीं।

एक और उपाय:

प्रतिक्रिया-मूल: run-androidअज्ञात पहचाना गया। शायद npm स्थापित के कारण

कृपया यह भी देखें:

"एक्सपो: एक मॉड्यूल लॉगरपॉर्टर नहीं मिल सकता है" का समाधान


मेरे लिए स्वीकृत उत्तर, +10 प्रतिनिधि। @ अभिनव को
सईद

8

मुझे यह पसंद आया ... काम किया !!

  1. CMD प्रोजेक्ट में रूट रन -प्रतिक्रिया-अपग्रेड
  2. यदि आपको अभी भी समस्याएँ मिल रही हैं, तो सुनिश्चित करें कि आपके पास प्रतिक्रियाएँ-मूल हैं, जो निर्भरताएँ json में package.json में हैं , यदि नहीं तो इसे जोड़ें
  3. यदि आपको अभी भी समस्या हो रही है, तो प्रतिक्रिया-मूल -v का उपयोग करके cmd में मूल निवासी प्रतिक्रिया का संस्करण प्राप्त करें और जांचें कि cmd और package.json में दिए गए मान समान हैं। cmd में दिए गए मान के साथ package.json को अपडेट करें

यहाँ मेरी समस्या हल हो गई।


5

प्रशासक के रूप में ओपन कमांड प्रॉम्प्ट और प्रॉजेक्ट फ़ोल्डर में, android चलाएं (npx प्रतिक्रिया-देशी रन-एंड्रॉइड)


3

हमारे पास यह समस्या थी क्योंकि Android फ़ोल्डर gradlew और gradlew.bat (संयुक्त राष्ट्र * X, विंडोज के लिए ग्रैडल स्टार्टअप स्क्रिप्ट) से फाइलें किसी तरह वैश्विक .gitignore फ़ाइल में मिल गईं, और इसलिए स्थानीय वातावरण पर प्रस्तुत नहीं की गईं।

वास्तव में रनिंग -देशी अपग्रेड कमांड उन फाइलों को पुनर्स्थापित करता है, इस प्रकार समस्या को ठीक करता है।


3

एक पूरक के रूप में, मामले में प्रतिक्रिया-देशी कमांड नहीं मिली है, आपको प्रतिक्रिया-मूल CLI स्थापित करना चाहिए:

npm install -g react-native-cli

फिर आप ऊपर बताए गए चरणों का पालन कर सकते हैं।

अधिक विवरण: प्रतिक्रिया-मूल: आदेश नहीं मिला


2

यदि आपने अपना प्रोजेक्ट शुरू किया है

npm install -g create-react-native-app
create-react-native-app MyReactNative
npm install -g react-native-cli
npm start

इसके बाद, आप प्रश्न में उपरोक्त समस्या का सामना कर सकते हैं इसलिए समाधान है:

npm run eject

2

मुझे आज इस समस्या का सामना करना पड़ा, और किसी भी समाधान ने मेरे लिए काम नहीं किया, इसलिए मुझे एक और मिल गया।

खराब स्वरूपित AndroidManifest.xml इस समस्या का कारण होगा , शायद आपने आज मेरी तरह छप स्क्रीन सेट किया है, और सही तरीके से AndroidManifest स्वरूपित नहीं किया


1

यहां, app.json का नाम नहीं है, लेकिन इसमें एक्सपो संबंधित कॉन्फ़िगरेशन है। तो बस app.json में नाम और प्रदर्शन नाम फ़ील्ड जोड़ें।

app.json (पहली दो पंक्तियाँ):

{
"name": "AwesomeProject",
"displayName": "Awesome Project",
"expo": {
    "name": "AwesomeProject",
    "description": "A very interesting project.",
    "slug": "AwesomeProject",
    "privacy": "public",
    "sdkVersion": "30.0.0",
    "platforms": ["ios", "android"],
    "ios": {
      "supportsTablet": true
    },
    "android": {
      "package": "com.project.first"
    },
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/images/icon.png",
    "splash": {
      "image": "./assets/images/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ]
  }
}

इसके बाद, बस दौड़ें:

$ प्रतिक्रिया-देशी बेदखल करना

I iOS फोल्डर बनाना।

एंड्रॉइड फोल्डर बनाना।

प्रतिक्रिया-मूल उन्नयन करने की आवश्यकता नहीं है।


वास्तव में, "एक्सपो इजेक्ट" भी बेहतर काम करता है। इसने मुझे विकल्प दिए और app.json को अपडेट किया और android / ios डायरेक्टरी बनाई।
hp2017

1

फ़ाइल निकालें: मूल निवासी प्रोजेक्ट रूट डायरेक्टरी और एंड्रॉइड का पता लगाएं -> ऐप -> बिल्ड -> इंटरमीडिएट -> साइनिंग_कॉन्फ़िग -> डिबग -> आउट -> साइन-इन-कॉन्फ़िगरेशन।


1

विंडोज में टर्मिनल चलाने वाले ने प्रशासक के रूप में मेरे लिए चाल चली ... अन्य समाधान काम नहीं किए।


यह केवल कार्तिक मनो द्वारा मौजूदा उत्तर के लिए धन्यवाद कह रहा है, है ना? यदि कृपया अधिक स्पष्ट न करें कि यह उत्तर क्या अतिरिक्त अंतर्दृष्टि प्रदान करता है।
युनानोश

1

मैं एंड्रॉइड स्टूडियो (गैर-एक्सपो) का उपयोग कर रहा हूं और यह मेरे लिए काम करता है

react-native init <your-project-name>

1

आपको अपना cmd व्यवस्थापक priviliges के साथ चलाना होगा। मेरे लिए वही मुद्दा हल हो गया। Didnt do "eject" या कुछ और।


समान प्रश्न के लिए बहुत सारे समान उत्तर उपलब्ध हैं। अपने उत्तर को जोड़ने के बजाय, यदि आप मदद करते हैं, तो आप मौजूदा उत्तर को रद्द कर सकते हैं।
दीपक संक्षिप्त

1

अपना रिएक्टिव नेटिव प्रोजेक्ट रूट डायरेक्टरी खोलें और Android -> ऐप -> बिल्ड -> इंटरमीडिएट -> साइनिंग_कॉन्फ़िग -> डिबग -> आउट -> साइन-इन करें।

फ़ाइल हटाएं और पुनः प्रयास करें।



0

मेरा काम करने का हल नीचे है, उपरोक्त में से कोई भी मेरे लिए काम नहीं करता है:

अपने प्रोजेक्ट फ़ोल्डर में सीडी और एक्सपो स्टार्ट --android टाइप करें।

या लंबा रास्ता:

  1. एंड्रॉयड स्टूडियो में AVD प्रबंधक खोलें और एक वर्चुअल डिवाइस चलाएं (आप बाद में AS को बंद कर सकते हैं)
  2. अपने प्रोजेक्ट फ़ोल्डर में CMD और 'एक्सपो स्टार्ट' टाइप करें
  3. एक बार एक्सपो ने विकल्प 2 शुरू कर दिया है जो "एंड्रॉइड एमुलेटर के लिए दबाएं" है

यह वर्चुअल डिवाइस पर एक्सपो स्थापित करेगा और आप वहां से परीक्षण कर सकते हैं


0

जब मैं भागा react-native eject, तो मुझे यह त्रुटि मिली:

Both the iOS and Android folders already exist! Please delete `ios` and/or `android` before ejecting.
  • MyProject/androidफ़ोल्डर हटाएँ ।
  • भागो react-native ejectयह androidफ़ोल्डर उत्पन्न किया

  • फिर react-native run-androidandroid बनाने के लिए चलाएँ


0

आपको Git के आधार पर नए अपग्रेड टूल का उपयोग करने पर विचार करना चाहिए। यह स्वचालित रूप से अधिकांश संघर्षों को हल करके उन्नयन को आसान बनाता है। इसका उपयोग करने के लिए: - प्रतिक्रियाशील मूल के पुराने संस्करण पर वापस जाएं - "npm इंस्टॉल -g प्रतिक्रिया-देशी-गिट-अपग्रेड" चलाएं - "प्रतिक्रिया-देशी-गिट-अपग्रेड" देखें https://facebook.github.io /react-native/docs/upgrading.html


0

यदि आपने अपना प्रोजेक्ट expoकमांड के साथ बनाया है , जैसे expo init projectname, तो बाद में आपको अपनी परियोजना को अस्वीकार करना होगा:

expo eject

अगर आपने अपना प्रोजेक्ट बनाया है react-native init projectNameतो आपको उसका उपयोग करना होगा

react-native eject


0

हो सकता है कि बहुत देर हो चुकी हो, मैंने Androidफ़ोल्डर को बैकअप फ़ाइल से बदल दिया । इसने मेरे लिए काम किया।



0

मुझे एक प्रोजेक्ट में एक ही त्रुटि (रिएक्ट मूल निवासी CLI के साथ बनाई गई):

यहाँ छवि विवरण दर्ज करें

यह पता चलता है कि मेरी एंड्रॉइड मैनिफ़ेस्ट फ़ाइल (android / app / src / main / AndroidManifest.xml) में एक सिंटैक्स त्रुटि थी।



0

हटाएं पर हस्ताक्षर-config.json अगले कोशिश फिर से प्रतिक्रिया देशी रन एंड्रॉयड

हस्ताक्षर-config.json फ़ाइल पथ: Android -> एप्लिकेशन - निर्माण -> मध्यवर्ती -> हस्ताक्षर_कानचीनी -> डिबग -> बाहर -> हस्ताक्षर- config.json


0

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


0

हटाएं प्रतिक्रिया देशी एंड्रॉयड build folderऔर फिर कमांड को फिर से लेंnpx react-native run-android

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.