'प्रतिक्रिया-लिपियाँ' को आंतरिक या बाह्य आदेश के रूप में मान्यता नहीं दी जाती है


101

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

mavenapp/src/main/javascript/[npm project files]

मेरे पैकेज के अंदर। Json, परीक्षण इस तरह दिखता है: "test": "react-scripts test --env=jsdom",

लेकिन जब मैं npm परीक्षण चलाने की कोशिश करता हूं तो कहते हैं

'प्रतिक्रिया-लिपियाँ' को आंतरिक या बाहरी आदेश के रूप में मान्यता नहीं दी जाती है,

दिलचस्प बात यह है कि जब मैंने जावास्क्रिप्ट प्रोजेक्ट को स्वतंत्र रूप से क्लोन किया तो मुझे यह त्रुटि नहीं मिली। मैंने फिर से दौड़ने की कोशिश की है npm install

npm version : 5.5.1

node version : 9.3.0


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

जवाबों:


90

यह संस्थापन के समय आपके नोड मॉड्यूल निर्देशिका में अनुपलब्ध प्रतिक्रिया-स्क्रिप्ट फ़ाइल के बारे में एक त्रुटि है ।

अपनी प्रतिक्रिया-स्क्रिप्ट निर्भरता की जाँच करें जो उपलब्ध है या पैकेज में नहीं है

यदि उपलब्ध नहीं है तो मैन्युअल रूप से जोड़ें:

npm प्रतिक्रिया-स्क्रिप्ट स्थापित करें - सेव करें


12
ऐसा न करें, यह अन्य परियोजनाओं के साथ समस्या पैदा कर सकता है ... आपको इस तरह से विश्व स्तर पर प्रतिक्रिया-स्क्रिप्ट स्थापित नहीं करना चाहिए। यहाँ देखें: github.com/facebook/create-react-app/issues/…
रोजडी कासिम

5
@RosdiKasim आपकी टिप्पणी पढ़ने के बाद, मुझे अपनी त्रुटि का एहसास हुआ है। अब, मैंने विश्व स्तर पर (-g) के बजाय विशिष्ट परियोजना के लिए कमान बदल दी है।
योगेश बोरड़

मेरे लिए कुछ भी नहीं बदलता है, फिर भी वही त्रुटि है। भले ही succesful npm_mulules फ़ोल्डर में कोई भी फ़ोल्डर प्रतिक्रिया-स्क्रिप्ट नहीं बनाता है, भले ही "npm इंस्टॉल रिएक्शन-स्क्रिप्ट्स - सेव करें" चल रहा हो। मैं
विंडोज 10

@RosdiKasim, आपकी टिप्पणी के आधार पर, आपको जीथब पर थ्रेड के अंत का पालन करना चाहिए। मैं एक ही मुद्दे पर चल रहा था और यह तय कर रहा था कि इस तरह से stackoverflow.com/a/54403797/8719007 (नीचे उत्तर)
सर्ज किशिको

47

आपने कोशिश की है:

rm -rf node_modules && npm install

node_modulesपहले पोंछते हुए , अक्सर नोड में बहुत सारे अजीब, पैकेज से संबंधित मुद्दों को ठीक करने के लिए जाता है।


2
हां मेरे पास ... कोई अंतर नहीं है ... अभी के लिए मुझे बस सबमॉड्यूल को हटाना पड़ा है और बस इसे मैन्युअल रूप से पेस्ट करना है।
जे स्मिथ

हम्म, आप अपने से लॉग की गई कोई भी त्रुटि नहीं देख npm installरहे हैं? एक चलाने की कोशिश करें npm install -fऔर देखें कि क्या कुछ भी बदलता है। एक और पैकेज हो सकता है जो स्थापित करने में विफल हो रहा है और create-react-appपूरी तरह से स्थापित करने से अवरुद्ध है। एक npm स्थापित करने के लिए मजबूर -f, btw, एक पूर्ण समाधान कभी नहीं है .... बस एक समस्या निवारण कदम है। यदि आपके द्वारा चलाए जाने के बाद कुछ भी बदलता है, तो आप जानते हैं कि किसी एक पैकेज में कुछ गड़बड़ है।
जॉनी असमर

इसके अतिरिक्त, आप यह सत्यापित कर सकते हैं कि आपके पास एक फ़ाइल है javascript/node_modules/.bin/react-scripts। यदि नहीं, तो इसके लिए कई अलग-अलग कारण हो सकते हैं, जिसमें अनुमतियाँ समस्याएँ शामिल हैं, सिम बनाने पर ओएस प्रतिबंध (सब कुछ node_moduels/.binएक सिम्लिंक इंस्टॉल पर उत्पन्न होता है। यह भी हो सकता है कि आपके पास प्रतिक्रिया-स्क्रिप्ट स्थापित न हो ... कोशिश करें चल रहा है npm install --save react-scriptsऔर देखें कि क्या मदद करता है।
जॉनी असमर

1
MacOS से विंडोज पर जाना (ड्रॉपबॉक्स सभी node_modulesफ़ोल्डर को सिंक करता है ) - केवल फ़ोल्डर को हटाना और इसे फिर से इंस्टॉल करना
एएस

हां - उपरोक्त आदेश क्या करता है। आपका लक्षण कई पैकेजों के कारण होने की संभावना थी जो प्रति ओएस सशर्त स्थापित प्रक्रियाएं करते हैं। लिनक्स, मैक और विंडोज में काफी मूलभूत परियोजना निर्भरता के साथ काफी कुछ विसंगतियां हैं।
जॉनी असमर

32

यदि react-scriptsवर्तमान में हैpackage.json

अगर आपको "react-scripts": "2.1.3"अपनी pakage.jsonफ़ाइल में ऐसा कुछ दिखाई देता है तो बस इस कमांड को टाइप करें

npm install

अगर react-scriptsमें मौजूद नहीं हैpackage.json

यदि "react-scripts"आपकी package.jsonफ़ाइल में ऐसा कुछ नहीं है, तो शायद आपने इसे स्थापित नहीं किया है। ऐसा करने के लिए निम्न कमांड टाइप करें और आप सभी सेट हो जाएंगे

npm install react-scripts --save


1
क्या होगा अगर मेरे पास यह मेरे पैकेज में है। Json और इसे भी स्थापित करें, लेकिन उसी समस्या का सामना करें?
Serob_b

@Serob_b कभी-कभी मुझे भी इस मामले में एक ही समस्या होती है कि मैं सिर्फ "npm इंस्टॉल" चलाता हूं और यह समस्या को हल करता है। या आप टर्मिनल में rm "-rf node_modules" लिखकर नोड_मॉडल फ़ोल्डर को हमेशा हटा सकते हैं और फिर "npm इंस्टॉल" चला सकते हैं। उम्मीद है कि यह मदद करता है
Hadi Mir

11

मेरी स्थिति में, मेरे नोड पैकेज के साथ कुछ समस्याएं हुईं। इसलिए मैं दौड़ता हूं npm audit fixऔर इसने सभी समस्याओं को ठीक कर दिया है


यह अब तक का सबसे अच्छा जवाब है। मैंने मैकबुक से एक पीसी में अपना कोड माइग्रेट किया और अपनी प्रतिक्रिया परियोजना को चलाने में असमर्थ था। "npm ऑडिट फिक्स" ने इसे तुरंत हल कर दिया।
वाकास अब्बासिद 10


4

मैं एक ही समस्या का सामना कर रहा था और मैं लगभग इस पर आधा खर्च करता हूं। यह मेरे लिए काम किया आप इसे आजमा सकते हैं

Daud

npm cache clean --force

फिर

npm rebuild

आखिरकार

npm install

सौभाग्य


इस समाधान के लिए धन्यवाद। आप कमाल के हैं)
ओटाबेक बुचर

आपका स्वागत है दोस्त
क्रिस्पेन गारी

3

मैं इस समस्या को ठीक करता हूं :-), बस अपने नोड की स्थापना रद्द करें। जेएस और छिपी हुई फाइलें दिखाएं

फिर "C: \ Users \ yourpcname \ AppData \ Roaming \" पर जाएं

फिर "npm" और "npm-cache" फ़ोल्डर को हटाएं

और नोड का नया संस्करण स्थापित करें।


2
यह वास्तव में एक समाधान नहीं है।
फणी ऋतविज

3

एक ही समस्या का सामना करना पड़ा, हालांकि मैं यार्न का उपयोग कर रहा हूं।

निम्नलिखित ने मेरे लिए काम किया:

yarn install 
yarn start

2

प्रतिक्रिया-लिपियों को एक आंतरिक या बाहरी कमांड के रूप में मान्यता प्राप्त नहीं है जो npm से संबंधित है।

मैं अपने पैकेज में अपनी सभी निर्भरता को अद्यतन करूंगा। यदि लागू हो तो मुख्य निर्देशिका और क्लाइंट निर्देशिका दोनों में नवीनतम संस्करणों के लिए फाइलें। आप अपनी निर्भरता के लिए अपने package.json फ़ाइलों में एक विशिष्ट संस्करण संख्या निर्दिष्ट करने के बजाय "*" तारांकन का उपयोग करके ऐसा कर सकते हैं।

उदाहरण के लिए:

"dependencies": {
    "body-parser": "*",
    "express": "*",
    "mongoose": "*",
    "react": "*",
    "react-dom": "*",
    "react-final-form": "*",
    "react-final-form-listeners": "*",
    "react-mapbox-gl": "*",
    "react-redux": "*",
    "react-responsive-modal": "*",
  }

मैं तब सुनिश्चित करूंगा कि कोई भी पैकेज-लॉक.जॉन को हटा दिया गया है और फिर एनपीएम इंस्टॉल और यार्न को मुख्य निर्देशिका और क्लाइंट निर्देशिका दोनों में और साथ ही यदि लागू हो तो चलाएं।

फिर आपको एक यार्न बिल्ड चलाने में सक्षम होना चाहिए और फिर एप्लिकेशन को चलाने के लिए यार्न स्टार्ट का उपयोग करना चाहिए।


यह बुरी सलाह है। *आपके संस्करण संख्याओं का उपयोग करना समस्याग्रस्त है क्योंकि यह विभिन्न प्रणालियों पर स्थापित किए जा रहे पैकेजों के विभिन्न संस्करणों का कारण बन सकता है। लॉक किए गए संस्करण संख्याओं का उपयोग करें और आवश्यकतानुसार उन्हें अपडेट करें
दाना वुडमैन

उत्पादन के उद्देश्यों के लिए यहां चीजें पूरी तरह से गलत हो सकती हैं, लेकिन परीक्षण उद्देश्यों के लिए सिर्फ एक विचार।
अहमदखातार

1

पोर्टेबल एप्स के लिए

package.json

निम्नलिखित नुसार

"scripts": {
    "start": "node node_modules/.bin/react-scripts start",
    "build": "node node_modules/.bin/react-scripts build",
    "test": "node node_modules/.bin/react-scripts test",
    "eject": "node node_modules/.bin/react-scripts eject"
  }

1

मैं इसे ठीक करता हूं

  1. पथ चर की जाँच करें और अद्यतन करें (पथ चर को अद्यतन करने के लिए नीचे देखें)
  2. नोड_मॉड्यूल्स और पैकेज-लॉक हटाएं। Json
  3. Daud npm install
  4. Daud npm run start

यदि यह काम नहीं करता है, तो नोडज को स्थापित करने और मरम्मत चलाने का प्रयास करें

या साफ npm कैश npm cache clean --force

पथ चर अद्यतन करने के लिए

  1. विंडोज़ कुंजी दबाएं
  2. निम्न को खोजें Edit the system environmental variable
  3. पर क्लिक करें Environment Variables...
  4. सिस्टम चर नीचे अनुभाग पर (दो खंड होंगे)
  5. Pathपरिवर्तनशील नाम का चयन करें
  6. क्लिक Edit..
  7. जाँच करें कि क्या C:\Program Files\nodejsसूची में है, यदि यह नहीं है

0

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


0

यह पुराना सवाल है लेकिन भविष्य के संदर्भ के लिए यह कुछ मदद हो सकती है। नोड_मॉडल फ़ोल्डर हटाएं और फिर से एनपीएम इंस्टॉल करें। मेरे लिए काम किया।


0

मेरे मामले में, मैंने अपनी फाइलें लिनक्स पर संपादित कीं, जहां मैंने नोड v14.0.5 स्थापित किया था, जब मैंने विंडोज पर रिबूट किया, जहां मुझे नोड v14.0.3 था, तो मुझे वही त्रुटि मिली। इसलिए मैंने विंडोज़ पर नोड संस्करण को अपडेट किया और मेरे लिए सब ठीक हो गया।


0

इसी तरह का मुद्दा था .. मैं इसे ठीक करने के लिए यार्न का इस्तेमाल करता था। मैंने देखा कि मेरे नोड मॉड्यूल में प्रतिक्रिया-स्क्रिप्ट नहीं मिला था, इसलिए मैंने इसे npm के साथ डाउनलोड करने का निर्णय लिया था, लेकिन मुझे लगता है कि यह भी विफल हो रहा है। इसलिए मैंने यार्न की कोशिश की (यार्न रिएक्शन-स्क्रिप्ट जोड़ता है) और जिसने दुःस्वप्न को हल कर दिया! आशा है कि यह काम आपके लिए भी होगा। खुश बहस करने वाले लोग।



0

यह मेरे लिए काम किया:

  • CLI में प्रोजेक्ट फोल्डर में जाएं और npm install टाइप करें। एक समान कमांड के लिए।

  • यदि आप Npm का उपयोग कर रहे हैं तो npm प्रारंभ टाइप करें । यार्न आदि का उपयोग करते हुए एक समान कमांड के लिए जाएं।

  • फ़ाइल काम करना शुरू कर देती है


-1

मेरे मामले में, समस्या को कुछ फ़ाइलों के लिए पर्याप्त फ़ाइल अनुमति नहीं होने के साथ प्रतिक्रिया-स्क्रिप्ट पैकेज स्थापना को लिखना था। क्या हल हुआ यह एक प्रशासक के रूप में गिट बश चला रहा था और फिर फिर से चल रहा npm install --save react-scriptsथा।


-2

जब मैं रिएक्ट का उपयोग करके एक नया प्रोजेक्ट बनाता हूं, तो रिएक्ट मॉड्यूल स्थापित करने के लिए मुझे नए प्रोजेक्ट्स क्लाइंटऐप फोल्डर के भीतर से "npm इंस्टॉल" (पॉवरशेल) चलाना होगा (उदाहरण के लिए "C: \ Users \ Chris \ source \ repos \ HelloWorld2 \" ClientApp ")। प्रतिक्रिया के साथ .NET कोर वेबऐप को ठीक से काम करने के लिए रिएक्ट कमांड के लिए सही स्थान पर रिएक्ट फाइल स्थापित करने की आवश्यकता है।

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