2014-09-06 4 views
28

मैं नोडज के लिए नया हूं और मैंने वैश्विक स्तर पर बॉवर मॉड्यूल स्थापित किया था। तब से NPM सूची आदेश के बाद उत्पादन जो मैं वेब पर के लिए खोज देता है, लेकिन कोई मदद नहीं मिल सका:एनपीएम सूची का उपयोग करते समय 'अमान्य' का क्या अर्थ है?

**npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/chalk 
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/chalk/node_modules/has-ansi/node_modules/ansi-regex 
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/configstore 
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/got/node_modules/object-assign 
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/latest-version/node_modules/package-json/node_modules/registry-url 
npm ERR! invalid: [email protected] /usr/local/lib/node_modules/bower/node_modules/update-notifier/node_modules/string-length/node_modules/strip-ansi 
npm ERR! not ok code 0** 

उत्पादन के बाकी सामान्य है और स्थापित मॉड्यूल सूचीबद्ध करता है। क्या कोई बता सकता है कि क्या हो रहा है?

+0

इस उत्तर को चेक करें। मुझे एक ही समस्या थी और यह तय हो गया। http://stackoverflow.com/questions/25238544/npm-err-invalid-strip-ansi0-2-2 – pasine

उत्तर

11

इसका मतलब है कि कुछ पर निर्भर करता है, उदाहरण के लिए, "async":"0.9.3" लेकिन जब वे require("async") करते हैं, तो एनपीएम सोचता है कि उन्हें कुछ अन्य संस्करण मिल जाएगा। और यह भी जांचें कि आपकी package.json फ़ाइल में सूचीबद्ध निर्भरताएं और उनके संस्करण उपलब्ध हैं।

यदि सब कुछ ठीक तो है आप द्वारा

npm install. 
+1

क्या आप अपने उत्तर पर विस्तार कर सकते हैं? यदि 'somelib''s 'package.json'' async "पर निर्भर करता है:" 0.9.3 "', निश्चित रूप से npm को async 0.9.3 को somelib/node_modules में स्थापित करना चाहिए और' आवश्यकता ("async") 'async को लोड करना चाहिए 0.9.3। क्या आप हमें बता सकते हैं कि किस तरह की परिस्थितियों में यह एसिंक के एक अलग संस्करण को लोड करेगा? आपके उत्तर की सहायकता पर संदेह नहीं है, मैं बस पूरी तरह से समझ में नहीं आता। – mikemaccana

+2

@mikemaccana 'somelib''s' package.json' हमेशा उस मॉड्यूल में 'somelib''s 'package.json' में उल्लिखित मॉड्यूल संस्करण स्थापित करेगा। इसलिए, यह मॉड्यूल के भीतर किसी भी समस्या का कारण नहीं बन जाएगा। लेकिन आपके प्रोजेक्ट सेटअप में, यदि आपने 'npm इंस्टॉल async @ 0.6' जैसे कुछ किया है, और आपके' package.json' में आपने निर्भरता निर्दिष्ट की है 'async: 0.9.x' तो यह मामला उठता है। – Ravi

+1

आह। मेरा प्रोजेक्ट सेटअप सामान्यतः 'एनपीएम इंस्टॉल' चलाएगा (बिना किसी विकल्प के) और 'पैकेज में जो भी हो, इंस्टॉल करें।जेसन' क्योंकि सभी निर्भरता 'package.json' (या shrinkwrap फ़ाइल) में होनी चाहिए। – mikemaccana

0

मैं एक संबंधित लेकिन अलग त्रुटि हो रही थी (लेकिन यहां समाप्त हुए पीछा किया

npm update 

के साथ इस समस्या का समाधान कर सकते हैं, तो मैं जवाब दे रहा हूँ यहां) जहां npm update चलाने के बाद मुझे मिल जाएगा। (npm install साथ ऐसा कोई मुद्दा, Fwiw)

[email protected] /home/malcolm/myapp 
├── [email protected] invalid 

beeminder पैकेज एक मैं बनाए रखने के है, इसलिए अपने मुख्य अनुप्रयोग में मैं latest करने के लिए अपने semver निर्धारित किया था। यह पहले ठीक काम करने लग रहा था, लेकिन मुझे लगता है कि npm का एक नया संस्करण इसे पसंद नहीं करता है।

मुझे लगा कि यह ^1.4.3 का उपयोग करना उचित था क्योंकि यदि मैं नए बदलाव पेश कर रहा हूं तो शायद मैं अपना खुद का कोड बदल रहा हूं। लेकिन अगर कुछ अजीब कारणों के लिए आपको नवीनतम पैकेज (ब्रेकिंग बदलाव सहित) की नवीनतम नवीनतम आवश्यकता है तो आप ^ के बजाय उपसर्ग के रूप में उपयोग कर सकते हैं।

3

मुझे अपना पैकेज.जेसन अपडेट किए बिना मॉड्यूल का एक नया संस्करण स्थापित करने के बाद यह त्रुटि मिल रही थी। तो package.json को पुराने संस्करण की आवश्यकता थी, जबकि npm list मेरी node_modules निर्देशिका में एक नए संस्करण का पता लगा रहा था।

निम्नलिखित आदेश को चलाने से मुझे संदेश से छुटकारा मिल गया।

npm install {required_module}@{new_version} --save

35

मैं एक ही पैकेज दोनों "निर्भरता" और विभिन्न संस्करणों के साथ "devDependencies" में स्थापित होने इस त्रुटि हो रही थी।

+0

यह स्वीकार्य उत्तर होना चाहिए – Andreas

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