Homebrew एनवीएम स्थापित करता है, लेकिन एनवीएम बाद में नहीं मिल सकता है?


94

मैं उपयोग कर रहा हूं homebrewऔर oh-my-zshएक नए OSX 10.10.1 इंस्टॉल पर। मैं के nvmमाध्यम से मिला homebrewऔर फिर इसे चलाने का प्रयास किया लेकिन कहते हैं - zsh: कमांड नहीं मिला: nvm

कुछ पता है कि समस्या क्या है? मैं स्थापित करने और बस ठीक उपयोग करने में सक्षम था ...

यहां छवि विवरण दर्ज करें

यहां छवि विवरण दर्ज करें


अद्यतन 9/20/2019

जैसा कि DarkPurple141 और Elise van Looij के अधिक हाल के उत्तरों द्वारा कहा गया है । nvmके साथ संगत प्रतीत नहीं होता है homebrew। इसे यहां स्थित आधिकारिक एनवीएम-श रेपो में भी कहा गया है

Homebrew स्थापना समर्थित नहीं है। यदि आपके पास होमब्रेव-स्थापित एनवीएम के साथ समस्याएं हैं, तो कृपया इसे अनइंस्टॉल करें, और समस्या दर्ज करने से पहले इसे नीचे दिए गए निर्देशों का उपयोग करके इंस्टॉल करें।

नोट: यदि आप zsh का उपयोग कर रहे हैं तो आप आसानी से nvm को zsh प्लगइन के रूप में स्थापित कर सकते हैं। Zsh-nvm इंस्टॉल करें और अपग्रेड करने के लिए nvm अपग्रेड रन करें।

निम्नलिखित चरणों में मदद करनी चाहिए:

  1. $ brew uninstall nvm
  2. $ brew cleanup(सिर्फ अच्छे उपाय के लिए)
  3. $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
  4. जाँच करें कि nvm $ चलाकर सही ढंग से स्थापित किया गया था command -v nvm

    4.A यदि प्रतिक्रिया $ के अलावा कुछ भी है nvm, तो निम्न दो पंक्तियों को ~ / .bash-profile फ़ाइल में जोड़ें: export NVM_DIR=~/.nvm source ~/.nvm/nvm.sh 4.b अपने कंप्यूटर को पुनरारंभ करें (आप टर्मिनल को बंद करने और इसे फिर से शुरू करने का प्रयास कर सकते हैं) 4.c ​​$ command -v nvm should now returnnvm`

  5. अब $ के साथ Node.js को अपडेट करें nvm install --lts

  6. एनपीएम अपडेट करें: $ nvm install-latest-npm
  7. $ npm install --global mocha। अंत में, सफलता! खैर, मेरे लिए और मुझे आपसे भी उम्मीद है।

3
यदि आप टर्मिनल को पुनरारंभ करते हैं तो क्या यह जारी रहता है?
आरोन ब्रेजर

रीश टाइप करने या नया शेल खोलने का प्रयास करें। कभी-कभी zsh अतिरिक्त नहीं उठाते हैं।
दून

मैंने शेल को बंद कर दिया है, सिस्टम को रिबूट किया और कुछ भी नहीं। किया और कोई किस्मत नहीं।
दयान

कैसे के बारे में काढ़ा लिंक nvm कि कुछ भी करता है?
दून

चेतावनी: पहले से ही लिंक किया गया: /usr/local/Cellar/nvm/0.20.0 relink करने के लिए: ब्रू अनलिंक nvm && ब्रुअन लिंक nvm
Dayan

जवाबों:


127

क्या आपने कैविट्स में सूचीबद्ध निर्देशों का पालन किया है?

[~] brew info nvm
nvm: stable 0.20.0, HEAD
https://github.com/creationix/nvm
Not installed
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/nvm.rb
==> Caveats
Add the following to $HOME/.bashrc, $HOME/.zshrc, or your shell's
equivalent configuration file:

  source $(brew --prefix nvm)/nvm.sh

Node installs will be lost upon upgrading nvm. Add the following above
the source line to move install location and prevent this:

  export NVM_DIR=~/.nvm

अतिरिक्त कॉन्फ़िगरेशन के बिना ऐसा नहीं लगता है कि यह डिफ़ॉल्ट रूप से एनवीएम मिलेगा।


3
दून के प्रमुखों के लिए धन्यवाद, मुझे पता नहीं था brew info, अभी भी नया है homebrew:) यह उन चरणों का पालन करने के बाद अब अच्छा काम कर रहा है।
दयान

इंस्टॉल पूरा होने के बाद उन्हें दिखाया जाना चाहिए। लेकिन अगर आप उनकी तलाश नहीं कर रहे हैं तो वे छूट सकते हैं।
दून

4
मुझे इसे जोड़ने के ~/.bash_profileलिए इसे काम
जनक

1
हम्म। मैं बैश का उपयोग नहीं करता (zsh को प्राथमिकता देता हूं), लेकिन यह OSX टर्मिनल की तरह दिखता है ।app (मैं या तो टर्मिनल का उपयोग नहीं करता हूं, Iterm2 को पसंद करता हूं), प्रत्येक शेल को एक लॉगिन शेल के रूप में खोलता है इसलिए हां .bash_profile उस मामले में सही होगा। भी जानकारी बदल गया है। इसलिए आपको नवीनतम संस्करण का उल्लेख करना चाहिए ..
दून

धन्यवाद! मुझे यह लाइन याद आ रही थी source $(brew --prefix nvm)/nvm.sh। इसे मेरे .zshrh
जॉन ओटेनटलिप्स

42

दो चीजें हैं जो आपको करने की आवश्यकता है। काढ़ा के माध्यम से एनवीएम स्थापित करने के बाद दिखाए गए कैविटीज़ का पालन करें, और आपको .bash_profile परिवर्तनों को सक्रिय / पुनः लोड करने की आवश्यकता है

  1. Daud brew install nvm
  2. कंसोल में दिखाए गए कैविट्स का अनुसरण करें, मेरा निम्नानुसार था, आपका अलग होना चाहिए!

निम्नलिखित को ~ / .bash_profile या अपनी इच्छित शेल कॉन्फ़िगरेशन फ़ाइल में जोड़ें:

export NVM_DIR="$HOME/.nvm"
. "$(brew --prefix nvm)/nvm.sh"
  1. . ~/.bash_profileअपने .bash_profile फ़ाइल में किए गए परिवर्तनों को लागू करने के लिए चलाएँ

यह बैश उपयोगकर्ताओं के लिए उपयोगी है, लेकिन ओपी zsh पर है। मुझे लगता है .zshrcकि आवश्यक संशोधनों के साथ भी यही बात लागू होती है ।
ट्रिपलए

5

जबकि स्वीकृत उत्तर तकनीकी रूप से काम करता है, यह ध्यान देने योग्य है कि Homebrew स्थापना आधिकारिक तौर पर nvmपैकेज द्वारा समर्थित नहीं है । ऊपर उठाए गए मुद्दों की तरह से बचने के लिए अनुशंसित तरीका स्थापना के नीचे के तरीकों में से किसी एक को लागू करना है।

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

# or wget:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

स्रोत: https://github.com/creationix/nvm


3

मैंने इस मुद्दे पर कुछ घंटों तक चक्कर और चक्कर लगाए हैं, लेकिन मैं इस निष्कर्ष पर पहुंचा हूं कि DarkPurple141 सही है: nvm सिर्फ होमब्रे के साथ संगत नहीं है, क्योंकि वे अपने गितुब nvm-sh / nmm नोड पर राज्य करते हैं संस्करण प्रबंधक । होमब्रेव एनवीएम स्थापित करेगा और सब कुछ ठीक लग रहा है, जब तक कि कोई मेरे मॉड्यूल में एक मॉड्यूल, मोचा स्थापित करने के लिए एनपीएम प्राप्त करने की कोशिश नहीं करता। उसने मुझे खूंखार त्रुटि पर वापस फेंक दिया:

ERR! त्रुटि: EACCES: अनुमति अस्वीकृत, पहुंच '/ usr / स्थानीय / देय / नोड_मॉड्यूल्स'

नोट: चरण 3 पर, संस्करण को सही रिलीज़ के साथ बदलना सुनिश्चित करें।

MacOS 10.14 Mojave पर समाधान था:

  1. $ brew uninstall nvm
  2. $ brew cleanup(सिर्फ अच्छे उपाय के लिए)
  3. $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash
  4. जाँच करें कि nvm $ चलाकर सही ढंग से स्थापित किया गया था command -v nvm

    4.A यदि प्रतिक्रिया $ के अलावा कुछ भी है nvm, तो निम्न दो पंक्तियों को ~ / .bash-profile फ़ाइल में जोड़ें: export NVM_DIR=~/.nvm source ~/.nvm/nvm.sh 4.b अपने कंप्यूटर को पुनरारंभ करें (आप टर्मिनल को बंद करने और इसे फिर से शुरू करने का प्रयास कर सकते हैं) 4.c ​​$ command -v nvm should now returnnvm`

  5. अब $ के साथ Node.js को अपडेट करें nvm install --lts

  6. एनपीएम अपडेट करें: $ nvm install-latest-npm
  7. $ npm install --global mocha। अंत में, सफलता! खैर, मेरे लिए और मुझे आपसे भी उम्मीद है।

1

एनवीएम स्थापित करने के लिए, brew install nvm

स्थापना के बाद या सिर्फ एक बार एनवीएम चलाने के लिए, $(brew --prefix nvm)/nvm.sh

एनवीएम चलाने के लिए हर बार zshखुलता है

  1. nano ~/.zshrc
  2. इस लाइन को जोड़ें source $(brew --prefix nvm)/nvm.sh

1

मैं उस nvm के स्थान को github पर जोड़ना चाहता हूं और संस्करण टकरा गया। कर्ल कमांड अब होना चाहिए:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

0

कारण आपको अपने बैश प्रोफाइल या किसी अन्य बैश फ़ाइलों को फिर से लोड करने की आवश्यकता होगी क्योंकि कमांड एनवीएम एक प्रोग्राम नहीं हो सकता है, लेकिन एक फ़ंक्शन जिसे परिभाषित किया गया है और इसका उपयोग केवल तभी किया जा सकता है जब संबंधित बैश फाइल को सॉर्ट किया गया हो।

एक सिस्टम पर जिसे मैंने चेक किया था

which nvm 

काम नहीं करता है लेकिन

nvm list

कर देता है। इसका मतलब यह है कि आप "एनवीएम" शब्द का इस्तेमाल किसी चीज के लिए कर सकते हैं। यह कुछ एक कार्यक्रम नहीं है। वर्तमान मामले में, यह एक फ़ंक्शन है जिसे सत्यापित किया जा सकता है

typeset -F | grep -P ' nvm$'

जो आउटपुट देता है

declare -F nvm

जिसका अर्थ है एनवीएम एक फ़ंक्शन है, जिसके द्वारा शरीर का निरीक्षण किया जा सकता है

type -F nvm

1
अच्छा .. लेकिन, यह एक उत्तर कैसे है?
Dayan

1
अपडेट के लिए धन्यवाद दयान - ने उत्तर को संपादित किया - इस कारण कि मैं इसे नहीं ढूंढ सका क्योंकि मैं इस पर भरोसा कर रहा था, लेकिन यह एक फ़ंक्शन के रूप में परिभाषित किया गया था। उस पर प्रकाश डालना चाहता था।
सौरभ हिरानी

यह जाँचने के लिए कि क्या nvm को ठीक से स्थापित किया गया है, टर्मिनल में 'कमांड -v nvm' का उपयोग करें। प्रतिक्रिया 'एनवीएम' होनी चाहिए। यदि ऐसा नहीं है, तो github.com/nvm-sh/nvm#installation-and-update पर दिए गए निर्देशों का पालन करें ।
एलिस वैन लोइज

0

यदि एक संभावना brewका उपयोग किया गया था nvm, तो यह हो सकता है कि अनलिंक किया जा सकता है, खासकर यदि यह किसी अन्य मैक ओएस उपयोगकर्ता द्वारा स्थापित किया गया था।

इस मामले में, निष्पादित करें:

brew link nvm

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.