मैं विश्व स्तर पर एक npm मॉड्यूल स्थापित करने की कोशिश कर रहा हूं जिसे मैंने अभी प्रकाशित किया है। जब भी मैं npm या फ़ोल्डर से इंस्टॉल करने का प्रयास करता हूं, मुझे यह त्रुटि मिलती है।
npm ERR! Error: ENOENT, chmod '/usr/local/lib/node_modules/takeapeek/lib/cmd.js'
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Linux 3.8.0-19-generic
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "takeapeek"
npm ERR! cwd /home/giodamlio
npm ERR! node -v v0.10.6
npm ERR! npm -v 1.3.6
npm ERR! path /usr/local/lib/node_modules/takeapeek/lib/cmd.js
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /home/giodamlio/npm-debug.log
npm ERR! not ok code 0
मैं sudo का उपयोग कर रहा हूं और मैंने ट्रिपल चेक किया है पैकेज में सब कुछ काम करना चाहिए। मैंने चारों ओर कुछ खोज की, और कुछ सिलेमर के मामलों को देखा, जिनमें से कोई भी हल नहीं हुआ है। यहाँ मैंने कोशिश की है।
- अपग्रेड npm (
sudo npm install -g npm
) - वैश्विक npm कैश साफ़ करें (
sudo npm cache clear
) - उपयोगकर्ता npm कैश साफ़ करें (
npm cache clear
)
मैंने देखा कि त्रुटि को उस फ़ाइल के साथ करना था जिसे मैं पथ से जोड़ रहा हूं, विशेषकर जब npm ने एक चामोद करने की कोशिश की। यह एक समस्या नहीं होनी चाहिए, मेरी lib/cli.js
सामान्य अनुमतियाँ हैं, और इस अधिष्ठापन के दौरान npm के पास सुपरयुसर अनुमतियाँ हैं।
Npm डॉक्स के माध्यम से खुदाई करने के बाद मुझे एक विकल्प मिला जो npm को बिन लिंक ( --no-bin-links
) बनाने से रोक देगा , जब मैंने इसके साथ इंस्टॉल करने की कोशिश की, तो यह ठीक काम किया।
तो सौदा क्या है? यह कुछ अजीब फ्रिंज केस बग है जिसका अभी तक कोई समाधान नहीं है?
संपादित करें: संदर्भ के लिए, यहां वह मॉड्यूल है जिसे मैंने अपलोड किया है
--no-bin-links
बस package.json के में फ़ाइलों symlinking से NPM बंद हो जाता है bin
वैश्विक स्थापित पर पथ के लिए हैश।