2012-10-12 11 views
217

सभी पैकेजों को पुनर्स्थापित करने का कोई आसान तरीका है कि मेरा ऐप इस पर निर्भर करता है (यानी वे मेरे ऐप्स node_modules फ़ोल्डर में हैं)?एनपीएम का उपयोग करके आप ऐप की निर्भरताओं को कैसे पुनर्स्थापित करते हैं?

+4

'NPM rebuild' भी देशी निर्भरता –

+1

मामले में के साथ कुछ मुद्दों मदद कर सकता है यह दूसरों में मदद करता है: आप बस एक पैकेज,' NPM अद्यतन पुनर्स्थापित करने के लिए प्रयास कर रहे हैं 'काम करता है महान – rinogo

उत्तर

354

सबसे आसान तरीका जो मैं देख सकता हूं node_modules फ़ोल्डर हटाएं और npm install निष्पादित करें।

+11

सहमत; मान लें कि आपने अपने ऐप के लिए 'package.json' फ़ाइल बनाई है। – JohnnyHK

+7

सावधान रहें कि 'node_modules' निर्देशिका को हटाने के बाद 'npm install' चल रहा है' परिणामस्वरूप 'package.json' में परिभाषित निर्भरताओं के विभिन्न संस्करणों का परिणाम हो सकता है। यदि आपको अपने ऐप के लिए निर्भरता के बहुत विशिष्ट संस्करणों की आवश्यकता है, तो सावधान रहें और 'npm shrinkwrap' में देखें या स्रोत नियंत्रण में अपनी 'node_modules' निर्देशिका में जांचें। – smithclay

+7

@स्मिथक्ले मैंने अपने ऐप के पैकेज.जेसन में संकुल के स्पष्ट संस्करण को परिभाषित किया है, तो यह ठीक होना चाहिए, है ना? – trusktr

72

npm update निष्पादित करने का सही तरीका है। यह वास्तव में शक्तिशाली कमांड है, यह गुम पैकेजों को अद्यतन करता है और यह भी जांचता है कि पैकेज alreaddy के एक नए संस्करण का उपयोग किया जा सकता है।

Intro to NPM पढ़ें ताकि आप यह समझ सकें कि आप एनपीएम के साथ क्या कर सकते हैं।

+36

लेकिन यदि कोई नया पैकेज नहीं है तो यह कुछ भी नहीं करेगा, है ना? मैं * बल * पुनर्स्थापित करने की कोशिश कर रहा हूं भले ही पैकेज पहले से ही नवीनतम संस्करण पर है। – trusktr

+2

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

+1

मैंने पैकेज निर्दिष्ट किए बिना बस 'npm अनइंस्टॉल' करने का प्रयास किया लेकिन यह एक त्रुटि फेंकता है। – trusktr

20

अधिकांश समय मैं सभी नोड मॉड्यूल की पूरी तरह से पुनर्स्थापित करने के लिए निम्न आदेश का उपयोग करता हूं (सुनिश्चित करें कि आप प्रोजेक्ट फ़ोल्डर में हैं)।

rm -rf node_modules && npm install 

तुम भी node_modules फ़ोल्डर को हटाने के लिए सुनिश्चित हो जाने के बाद npm cache clean चला सकते हैं क्या कोई कैश की गई निर्भरता नहीं हैं।

20

npm स्थापित CLI आदेश अद्यतन और --force झंडा

-f या --force तर्क स्थानीय प्रतिलिपि डिस्क पर मौजूद है, भले ही दूरदराज के संसाधनों को लाने के लिए बाध्य करेगा npm गयी।

npm install

4

आप reinstall module NPM में पाया उपयोग कर सकते हैं।

यह स्थापित करने के बाद, आप निम्न आदेश का उपयोग कर सकते हैं:

reinstall 

मैन्युअल node_modules फ़ोल्डर को दूर करने और npm install बनाने के साथ फर्क सिर्फ इतना है इस आदेश स्वचालित रूप से स्पष्ट NPM का कैश है। तो, आप एक कमांड में तीन कदम प्राप्त कर सकते हैं।

+0

@ g00glen00b मैंने संपादित किया है ताकि अब इसमें हाइपरलिंक – Rob

+0

@ g00glen00b के बिना उपयोगी जानकारी शामिल हो, यह बिल्कुल ठीक है; यह इसे हटाने के लिए उम्मीदवार नहीं बनाता है। कृपया [यह पोस्ट] देखें (https://meta.stackexchange.com/questions/225370/your-answer-is-in-another-castle-when-is-an-answer-not-an-answer) - विशेष रूप से यह एक लिंक के साथ छोटे उत्तरों को संबोधित करता है, बशर्ते कि हाइपरलिंक हटा दिए जाने पर कुछ उपयोगी जानकारी (यानी पुस्तकालय का नाम) हो – Rob

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

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