node.js - कॉर्डोवा और फोनगैप उबंटू 14.04 पर काम नहीं कर रहे हैं




ubuntu extjs cordova (5)

मैंने एनपीएम के साथ कॉर्डोवा और फोनगैप स्थापित किया:

sudo npm install -g cordova
sudo npm install -g phonegap

हालांकि, दोनों एक ही त्रुटि संदेश लौटते हैं:

/usr/bin/env: node: No such file or directory

Answers

आपके टर्मिनल में निम्नलिखित चलाएं:

sudo apt-get update

sudo apt-get install nodejs

sudo apt-get install npm

यह आपके पथ पर नोड या नोड लिब नहीं ढूंढ रहा है

यहां पोस्ट किए गए विभिन्न समाधान:

https://github.com/joyent/node/issues/3911

कुछ: पथ:

संलग्न / usr / स्थानीय / बिन: / usr / बिन

putenv('PATH=' . getenv('PATH') . ':/usr/local/bin:/usr/bin');

सिमलिंक:

ln -s /usr/bin/nodejs /usr/bin/node

नोड विरासत स्थापित करना:

apt-get install nodejs-legacy

अगला आदेश मदद करता है:

ln -s /usr/bin/nodejs /usr/bin/node

/usr/local (not /usr/bin ) में शॉर्टकट बनाएं:

ln -s /usr/bin/nodejs /usr/local/bin/node

लिनक्स दस्तावेज़ीकरण परियोजना के अनुसार, वितरण वहां कुछ भी स्थापित नहीं कर सकता है। यह पूरी तरह से स्थानीय प्रशासक के उपयोग के लिए आरक्षित है।

इस तरह वह पूरी तरह से निश्चित हो सकता है कि उसके वितरण में कोई अपडेट या अपग्रेड स्थानीय रूप से इंस्टॉल किए गए किसी भी अतिरिक्त सॉफ़्टवेयर को ओवरराइट नहीं करेगा।

यदि आप एक पूर्ण-स्टैक डेवलपर हैं जो बाद की सुविधाओं की आवश्यकता है, तो मैं उबंटू निर्देशों के अनुसार नवीनतम Node.JS स्थापित करने की सलाह देता हूं।

याद रखें कि उबंटू 14.04.5 एलटीएस नोड.जेएस v0.10.25 (स्थिर) प्रदान करता है।


यदि आपके पास पहले से ही आपके पथ में $HOME/bin है, तो एक सरल समाधान बस है ...

npm config set prefix ~
  • नए नोड कमांड अब आपके $HOME/bin निर्देशिका में स्थापित हो जाएंगे।
  • अपना रास्ता बदलने की जरूरत नहीं है!

चूंकि यह चर्चा वास्तव में sudo चलाने के सुरक्षा जोखिम को कम करने के बारे में है, आपको यह भी पता होना चाहिए कि कोई भी नोड ऐप संभावित रूप से एक ऐप नाम स्थापित कर सकता है जो कि पंजीकृत नोड पैकेज नाम से मेल नहीं खाता है, जिसे आप इंस्टॉल करते हैं। तो एक सुरक्षा जोखिम है कि एक npm install मौजूदा सिस्टम कमांड को बदल देगा या आपके पास पहले से ही $HOME/bin । यदि आप चिंतित हैं, तो आप जिस ऐप को इंस्टॉल कर रहे हैं उसके package.json फ़ाइल में bin और scripts गुणों की जांच करें।

सामान्यतः, यह सबसे सुरक्षित है:

  • (ए) अपने पथ में $HOME/bin रखें, इसलिए सिस्टम कमांड्स को अधिभारित नहीं किया गया है।
  • (बी) शामिल नहीं है "।" या आपके $PATH में कोई सापेक्ष पथ इसलिए आप गलती से एक कमांड नहीं चलाते जो वर्तमान निर्देशिका में होता है।

संदर्भ:





node.js ubuntu extjs cordova