2013-02-14 20 views
29

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

जब मैं चलाएँ:

sudo npm install -g grunt 

यह के अंतिम भाग का कहना है:

/usr/bin/grunt -> /usr/lib/node_modules/grunt/bin/grunt 
npm ERR! peerinvalid The package flatiron does not satisfy its siblings' peerDependencies requirements! 
npm ERR! peerinvalid Peer [email protected] wants [email protected]~0.1.9 
npm ERR! peerinvalid Peer [email protected] wants [email protected]~0.1.9 

npm ERR! System Linux 3.5.0-23-generic 
npm ERR! command "nodejs" "/usr/bin/npm" "install" "-g" "grunt" 
npm ERR! cwd /home/explunit 
npm ERR! node -v v0.8.19 
npm ERR! npm -v 1.2.9 
npm ERR! code EPEERINVALID 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /home/explunit/npm-debug.log 
npm ERR! not ok code 0 

आप ऊपर में देख सकते हैं, मैं नोड 0.8.19 और NPM 1.2.9 पर हूँ (नवीनतम जो पीपीए से नीचे आता है: उबंटू 12.10 पर क्रिस-ली)।

अन्य चीजें मैंने कोशिश की:

  • एक ताजा Ubuntu पर ही स्थापित किया। त्रुटियाँ नहीं। स्क्रिप्ट आउटपुट उन अंतिम कुछ त्रुटि लाइनों तक समान दिखता है।
  • रण "सुडो एनपीएम कैश क्लीन" और फिर से प्रयास किया। कोई भाग्य नहीं।
  • Ran "NPM सूची" और सूचीबद्ध

उत्तर

59

मेरे गलती NPM सूची आदेश पर जी जोड़कर नहीं कर रहा था और कुछ नहीं था।

npm list -g 

एक बार मैंने वह किया, मैं विश्व स्तर पर स्थापित मॉड्यूल की सूची (जैसे बोवर, JSHint, मोचा) को देखा, और अंत में:

npm ERR! peer invalid: [email protected] /usr/lib/node_modules/jitsu/node_modules/flatiron 
npm ERR! not ok code 0 

तब मैं इस आदेश को देखने के लिए भाग गया जो लोग flatiron का उपयोग कर रहे थे:

npm list -g flatiron 

इस मामले में यह jitsu था, एक मॉड्यूल जिसका मैं अब और उपयोग नहीं कर रहा हूं। मैं

sudo npm uninstall -g jitsu 
sudo npm uninstall -g grunt 

और फिर मूल आदेश फिर से चलाया। इस प्रश्न पर बाद में आने वाले किसी भी व्यक्ति के लिए नोट: release of 0.4 के बाद वैश्विक स्तर पर ग्रंट कमांड लाइन को पुनर्स्थापित करने के लिए सही मॉड्यूल अब grunt-cli है, grunt जैसा कि मैंने मूल प्रश्न पूछा था।

अगर मैं वास्तव में जित्सु मैं इसे बजाय इसे अनइंस्टॉल करके (धन्यवाद @BenAtkin) की अद्यतन किया जा सकता था रखना चाहता:

npm install -g jitsu 

और फिर मूल आदेश को फिर से चलाते हैं। अधिक पृष्ठभूमि के लिए this blog post about peerDependency being added in node 0.8.19 देखें।

+0

प्रश्न और उत्तर के लिए धन्यवाद, उसी त्रुटि और उसी मॉड्यूल (jitsu) को गड़बड़ाने के साथ, ब्राउज़र को स्थापित करने की कोशिश कर रहे पागल हो रहा था। यह वास्तव में मुझे स्पष्ट नहीं था कि समस्या मेरे पर्यावरण के साथ थी, मुझे विश्वास था कि समस्या ब्राउज़र के साथ थी, लगभग एक मुद्दा उठाया, शर्मिंदगी उलटा धन्यवाद :) –

9

यदि आपको जित्सु स्थापित करने में कोई फर्क नहीं पड़ता है, तो आप बस जित्सू को अपग्रेड कर सकते हैं और इसे काम करना चाहिए।

npm install -g jitsu 
npm install -g grunt-cli 
संबंधित मुद्दे