Należy zauważyć, że chociaż poprosiłeś o użycie homebrew. Używanie homebrew do instalacji nvm nie jest zalecane Od github.com/creationix/nvm "Instalacja Homebrew nie jest obsługiwana. Jeśli masz problemy z nvm zainstalowanym przez homebrew, odinstaluj go i zainstaluj zgodnie z poniższymi instrukcjami, przed zgłoszeniem problemu ”.
Dodaj ostatni rozkaz do .profile, .bashrclub .zshrcplik, aby nie uruchamiać go ponownie na każdym uruchomieniu terminala. Na przykład, aby dodać go do .profilebiegu:
npmjest dostarczany z node(lub iojs), więc będzie dostępny po zainstalowaniu node(lub iojs). Możesz zaktualizować go do najnowszej wersji:
$ npm install -g npm@latest
UPD Poprzednia wersja to npm update -g npm. Dzięki @Metallica za wskazanie właściwej drogi (spójrz na komentarz poniżej).
Korzystanie z npminstalacji ionic:
npm install -g ionic
A co z ngCordova: możesz go zainstalować za pomocą npmlub bower. Nie wiem, który wariant jest dla Ciebie bardziej odpowiedni, zależy to od menedżera pakietów, którego chcesz użyć po stronie klienta. Więc opiszę je obie:
Używanienpm : Przejdź do folderu swojego projektu i zainstaluj ng-cordovaw nim:
npm install --save ng-cordova
Zastosowaniebower : zainstaluj altankę:
npm install -g bower
A następnie przejdź do folderu projektu i zainstaluj ngCordovaw nim:
bower install --save ngCordova
PS
Niektóre polecenia mogą wymagać uprawnień administratora
Krótki wariant npm install some_moduletonpm i some_module
Jeśli aktualizujesz sam npm, NIE używaj polecenia npm update. Zalecanym przez upstream sposobem aktualizowania npm jest: npm install -g npm@latest(od brew info nodei tutaj )
Javad Sadeqzadeh
10
Z bieżącej instalacji brew nvm: „Zwróć uwagę, że firma upstream poprosiła nas, aby jawne zarządzanie nvm przez Homebrew nie było przez nich obsługiwane ...” -> Więc prawdopodobnie właściwą odpowiedzią jest nieużywanie brew dla nvm / node.js / io .js.
Daniel
7
Otrzymałem komunikat o błędzie „nvm nie jest zgodny z opcją„ prefiks ”npm config”. według tej strony ( github.com/creationix/nvm/issues/855#issue-109279804 ), NVM nie jest kompatybilny z Homebrew. „Zważyłem odinstalować nvm” i zainstalować nvm za pomocą polecenia CURL, a teraz komunikat o błędzie zniknął.
YeeHaw1234,
4
Używałem nvm przez brew przez jakiś czas, ale dostałem też komunikat "upstream ... wyraźny ... nieobsługiwany". Dokumenty NVM wyraźnie mówią: „Instalacja Homebrew nie jest obsługiwana. Jeśli masz problemy z nvm zainstalowanym przez homebrew, przed zgłoszeniem problemu należy go odinstalować i zainstalować zgodnie z instrukcjami poniżej”. Więc prawdopodobnie nie powinna to być już akceptowana odpowiedź. Właśnie zacząłem używać n, które działa.
Aktualizacja 2019: Użyj NVM do zainstalowania węzła, a nie Homebrew
W większości odpowiedzi zalecanym sposobem instalacji nvm jest użycie Homebrew
Nie rób tego
Na stronie Github dla nvm jest to wyraźnie określone:
Instalacja Homebrew nie jest obsługiwana. Jeśli masz problemy z nvm zainstalowanym przez homebrew, przed zgłoszeniem problemu należy go odinstalować i zainstalować zgodnie z instrukcjami poniżej.
Myślę, że mógłbyś również nvm install --ltsdostać najnowszy LTS
skube
1
Dziękuję za sprowadzenie tego do góry, ja poszedłem straszną dziurę królik z NVM i homebrew i właśnie pojawił ...
cssidy
Dobra odpowiedź! Po wielu czytaniach (instalacje węzłów mogą być polem minowym), po prostu uwarzyłem odinstalowany węzeł, wyczyściłem wszystko i użyłem nvm do zainstalowania węzła na Mojave 10.14.4: stackoverflow.com/q/55735701/123033
Dave Everitt
13
Używam n (zarządzanie wersjami węzła)
Możesz go zainstalować na dwa sposoby
brew install n
lub
npm install -g n
Możesz przełączać się między różnymi wersjami node i io. Oto przykład z mojego aktualnego środowiska env, kiedy dzwonię n bez parametrów:
$ n
io/3.3.1
node/0.12.7
node/4.0.0
node/5.0.0ο node/5.10.1
Możesz dodać trzeci sposób instalacji, który jest bezbolesny i pozostawia przydatne narzędzie do odinstalowywania, jeśli go potrzebujesz - github.com/mklement0/n-install Ta metoda jest sugerowana w dokumentacji n na github.com/tj/n
whatsthatitspat
1
Należy również wspomnieć, że jeśli planujesz uruchamiać różne wersje węzłów dla różnych projektów jednocześnie (jak w 2 różnych oknach terminali), lepszym wyborem jest nvm, ponieważ przełącza tylko ścieżki do węzła w każdej sesji.
Nilloc
10
Jestem na to bardzo późno, ale nie podobały mi się inne odpowiedzi
Ty NIE NALEŻY używać brewdo instalacji węzła i KMP .
Widziałem kilka miejsc zasugerował, że należy użyć, aby zainstalować Homebrew Node (jak alexpods odpowiedzieć w tym zespołu Treehouse wpis na blogu ), ale instalując ten sposób jesteś bardziej podatny na napotkasz zagadnień jak npmi brewto zarówno menedżerów pakietów i zalecana mieć menedżera pakietów zarządzać innym menedżerem pakietów, co prowadzi do problemów, takich jak ten błąd oficjalne problemy z npm Błąd: Odmowa usunięcia: / usr / local / bin / npm lub to Nie można odinstalować modułu npm na OSX
Ponadto użycie instalacji npm Homebrew będzie wymagało użycia sudo podczas instalowania pakietów globalnych. Ponieważ jednym z podstawowych pomysłów Homebrew jest to, że aplikacje można instalować bez przyznawania im uprawnień roota, jest to zły pomysł.
Do wszystkiego innego
Użyłbym npm; ale naprawdę powinieneś po prostu postępować zgodnie z instrukcją instalacji dla każdego modułu, postępując zgodnie ze wskazówkami na tamtej stronie internetowej, ponieważ będą bardziej świadomi wszelkich problemów lub błędów, które mają, niż ktokolwiek inny
Więc sugerujesz po prostu zainstalowanie go z ich pobierania?
Shawn Mclean
6
Jeśli wcześniej zainstalowałeś węzeł przy użyciu brew, będziesz mieć kilka dodatkowych plików, które powinieneś wyczyścić przed zainstalowaniem węzła „we właściwy sposób”. Ponadto musiałem dodać kilka ustawień do mojego skryptu startowego, aby wszystko działało płynnie.
Napisałem skrypt, aby to ułatwić.
# filename: install-nvm-npm-node
# author:LexSheehan# purpose:To cleanly install NVM, NODE and NPM
# dependencies: brew
NOW=$(date +%x\ %H:%M:%S)
CR=$'\n'
REV=$(tput rev)
OFF=$(tput sgr0)
BACKUP_DIR=$HOME/backups/nvm-npm-bower-caches/$NOW
MY_NAME=$(basename $0)
NODE_VER_TO_INSTALL=$1
if["$NODE_VER_TO_INSTALL"==""]; then
NODE_VER_TO_INSTALL=v0.12.2
fi
if["`echo "$NODE_VER_TO_INSTALL" | cut -c1-1`"!="v"]; then
echo """$CR""Usage: $ $MY_NAME <NODE_VERSION_TO_INSALL>"
echo "Example: $ $MY_NAME v0.12.1"
echo "Example: $ $MY_NAME $CR"
exit 1
fi
echo """$CR""First, run: $ brew update"
echo "Likely, you'll need to do what it suggests."
echo "Likely, you'll need to run: $ brew update$CR"
echo "To install latest node version, run the following command to get the latest version: $ nvm ls-remote"
echo "... and pass the version number you want as the only param to $MY_NAME. $CR"
echo "Are you ready to install the latest version of nvm and npm and node version $NODE_VER_TO_INSTALL ?$CR"
echo "Press CTL+C to exit --or-- Enter to continue..."
read x
echo """$REV""Uninstalling nvm...$CR$OFF"#Making backups, but in all likelyhood you'll just reinstall them (and won't need these backups)if[!-d "$BACKUP_DIR"]; then
echo "Creating directory to store $HOME/.nvm .npm and .bower cache backups: $BACKUP_DIR"
mkdir -p $BACKUP_DIR
fi
set-x
mv $HOME/.nvm $BACKUP_DIR 2>/dev/null
mv $HOME/.npm $BACKUP_DIR 2>/dev/null
mv $HOME/.bower $BACKUP_DIR 2>/dev/null{set+x;}&>/dev/null
echo "$REV""$CR""Uninstalling node...$CR$OFF"
echo "Enter your password to remove user some node-related /usr/local directories"set-x
sudo rm -rf /usr/local/lib/node_modules
rm -rf /usr/local/lib/node
rm -rf /usr/local/include/node
rm -rf /usr/local/include/node_modules
rm /usr/local/bin/npm
rm /usr/local/lib/dtrace/node.d
rm -rf $HOME/.node
rm -rf $HOME/.node-gyp
rm /opt/local/bin/node
rm /opt/local/include/node
rm -rf /opt/local/lib/node_modules
rm -rf /usr/local/Cellar/nvm
brew uninstall node 2>/dev/null{set+x;}&>/dev/null
echo "$REV""$CR""Installing nvm...$CR$OFF"
echo "++brew install nvm"
brew install nvm
echo '$(brew --prefix nvm)/nvm.sh'
source $(brew --prefix nvm)/nvm.sh
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc):$CR$OFF"
echo "export NVM_DIR=\"\$(brew --prefix nvm)\"; [ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"$CR"
NVM_DIR="$(brew --prefix nvm)"
echo """$CR""Using nvm install node...$CR"
echo "++ nvm install $NODE_VER_TO_INSTALL"
nvm install $NODE_VER_TO_INSTALL
NODE_BINARY_PATH="`find /usr/local/Cellar/nvm -name node -type d|head -n 1`/$NODE_VER_TO_INSTALL/bin"
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc) and then restart your shell:$CR$OFF"
echo "export PATH=\$PATH:$NODE_BINARY_PATH:$HOME/.node/bin"
echo """$CR""Upgrading npm...$CR"
echo '++ install -g npm@latest'
npm install -g npm@latest
{set+x;}&>/dev/null
echo "$REV""$CR""Insert following line in your $HOME/.npmrc file:$OFF"
echo """$CR""prefix=$HOME/.node$CR"
echo "Now, all is likley well if you can run the following without errors: npm install -g grunt-cli$CR"
echo "Other recommended global installs: bower, gulp, yo, node-inspector$CR"
Napisałem tutaj krótki artykuł , który szczegółowo wyjaśnia, dlaczego jest to „właściwa droga”.
Jeśli chcesz zainstalować iojs, zrób to za pomocą nvm w następujący sposób:
nvm install iojs-v1.7.1
Aby zainstalować napar, po prostu zobacz jego stronę główną .
Wspaniale jest widzieć, że wszystkie te menedżery pakietów i menedżerów wersji naprawdę pomagają usunąć niestandardowe napisane skrypty, hacki i obejścia, aby umożliwić działanie techstack xyz. niesamowite.
Michael Trouw
Udało mi się, mimo że zacząłem od npm i napar, oba zepsute
Chris F Carroll
5
Powinieneś zainstalować node.js z nvm, ponieważ w ten sposób nie musisz nadawać uprawnień superużytkownika podczas instalowania pakietów globalnych (możesz po prostu wykonać polecenie „npm install -g nazwa pakietu” bez poprzedzania „sudo”).
Napar jest jednak fantastyczny do innych rzeczy. Mam tendencję do tendencji do Bower, gdy mam możliwość zainstalowania czegoś w Bower.
Instalowanie węzła za pomocą nvm jest teraz moim preferowanym podejściem. Z oczywistego powodu, że mogę mieć wiele wersji węzła na moim komputerze, a także nie muszę wykonywać npm z sudo. Napisałem post na blogu garywoodfine.com/install-nodejs-nvm-osx wyjaśniający, jak zainstalować
Gary Woodfine
4
Zgadzam się z noa - jeśli trzeba mieć kilka wersji node, io.jsto brew nie jest odpowiednim rozwiązaniem.
Odpowiedzi:
Korzystanie z
homebrew
instalacjinvm
:Dodaj ostatni rozkaz do
.profile
,.bashrc
lub.zshrc
plik, aby nie uruchamiać go ponownie na każdym uruchomieniu terminala. Na przykład, aby dodać go do.profile
biegu:Jeśli masz problemy z instalacją
nvm
za pomocąbrew
, możesz zainstalować ją ręcznie (patrz tutaj )Używając
nvm
installnode
lubiojs
(możesz zainstalować dowolną wersję):npm
jest dostarczany znode
(lubiojs
), więc będzie dostępny po zainstalowaniunode
(lubiojs
). Możesz zaktualizować go do najnowszej wersji:UPD Poprzednia wersja to
. Dzięki @Metallica za wskazanie właściwej drogi (spójrz na komentarz poniżej).npm update -g npm
Korzystanie z
npm
instalacjiionic
:A co z
ngCordova
: możesz go zainstalować za pomocąnpm
lubbower
. Nie wiem, który wariant jest dla Ciebie bardziej odpowiedni, zależy to od menedżera pakietów, którego chcesz użyć po stronie klienta. Więc opiszę je obie:Używanie
npm
: Przejdź do folderu swojego projektu i zainstalujng-cordova
w nim:Zastosowanie
bower
: zainstaluj altankę:A następnie przejdź do folderu projektu i zainstaluj
ngCordova
w nim:PS
npm install some_module
tonpm i some_module
źródło
npm install -g npm@latest
(odbrew info node
i tutaj )Aktualizacja 2019: Użyj NVM do zainstalowania węzła, a nie Homebrew
W większości odpowiedzi zalecanym sposobem instalacji nvm jest użycie Homebrew
Nie rób tego
Na stronie Github dla nvm jest to wyraźnie określone:
Zamiast tego użyj następującej metody
Skrypt klonuje repozytorium nvm do ~ / .nvm i dodaje linię źródłową do twojego profilu (~ / .bash_profile, ~ / .zshrc, ~ / .profile lub ~ / .bashrc).
Następnie użyj nvm, aby zainstalować node. Na przykład, aby zainstalować najnowszą wersję LTS, wykonaj:
Czyste i bezproblemowe. Oznaczałoby to również jako domyślną wersję węzła, więc wszystko powinno być ustawione
źródło
nvm install --lts
dostać najnowszy LTSUżywam n (zarządzanie wersjami węzła)
Możesz go zainstalować na dwa sposoby
lub
Możesz przełączać się między różnymi wersjami node i io. Oto przykład z mojego aktualnego środowiska env, kiedy dzwonię n bez parametrów:
źródło
Jestem na to bardzo późno, ale nie podobały mi się inne odpowiedzi
Instalowanie Homebrew
Do zaparzania metę
Instalowanie node & npm
Ty NIE NALEŻY używać
brew
do instalacji węzła i KMP .Widziałem kilka miejsc zasugerował, że należy użyć, aby zainstalować Homebrew Node (jak alexpods odpowiedzieć w tym zespołu Treehouse wpis na blogu ), ale instalując ten sposób jesteś bardziej podatny na napotkasz zagadnień jak
npm
ibrew
to zarówno menedżerów pakietów i zalecana mieć menedżera pakietów zarządzać innym menedżerem pakietów, co prowadzi do problemów, takich jak ten błąd oficjalne problemy z npm Błąd: Odmowa usunięcia: / usr / local / bin / npm lub to Nie można odinstalować modułu npm na OSXMożesz przeczytać więcej na ten temat w poście DanHerberta Naprawianie npm w systemie Mac OS X dla użytkowników Homebrew , gdzie mówi dalej
Do wszystkiego innego
Użyłbym npm; ale naprawdę powinieneś po prostu postępować zgodnie z instrukcją instalacji dla każdego modułu, postępując zgodnie ze wskazówkami na tamtej stronie internetowej, ponieważ będą bardziej świadomi wszelkich problemów lub błędów, które mają, niż ktokolwiek inny
źródło
Jeśli wcześniej zainstalowałeś węzeł przy użyciu brew, będziesz mieć kilka dodatkowych plików, które powinieneś wyczyścić przed zainstalowaniem węzła „we właściwy sposób”. Ponadto musiałem dodać kilka ustawień do mojego skryptu startowego, aby wszystko działało płynnie.
Napisałem skrypt, aby to ułatwić.
Napisałem tutaj krótki artykuł , który szczegółowo wyjaśnia, dlaczego jest to „właściwa droga”.
Jeśli chcesz zainstalować iojs, zrób to za pomocą nvm w następujący sposób:
Aby zainstalować napar, po prostu zobacz jego stronę główną .
Zobacz odpowiedź alexpods na resztę.
źródło
Powinieneś zainstalować node.js z nvm, ponieważ w ten sposób nie musisz nadawać uprawnień superużytkownika podczas instalowania pakietów globalnych (możesz po prostu wykonać polecenie „npm install -g nazwa pakietu” bez poprzedzania „sudo”).
Napar jest jednak fantastyczny do innych rzeczy. Mam tendencję do tendencji do Bower, gdy mam możliwość zainstalowania czegoś w Bower.
źródło
Zgadzam się z noa - jeśli trzeba mieć kilka wersji
node
,io.js
to brew nie jest odpowiednim rozwiązaniem.Możesz pomóc w testach beta
io.js
w nvm: https://github.com/creationix/nvm/pull/616Jeśli tylko chcesz
io.js
i nie zmieniasz wersji, możesz zainstalować dystrybucję binarnąio.js
z https://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz ; Obejmuje tonpm
i nie będziesz potrzebować,nvm
jeśli nie zmieniasz wersji.Pamiętaj o aktualizacji
npm
po zainstalowaniu:sudo npm install -g npm@latest
źródło
Oto co robię:
Nie ma Homebrew dla tego.
nvm
wkrótce będzie obsługiwać io.js, ale nie w momencie publikacji: https://github.com/creationix/nvm/issues/590Następnie zainstaluj wszystko inne, dla każdego projektu, z rozszerzeniem
package.json
inpm install
.źródło
Do instalacji z zsh i Homebrew:
Następnie dodaj następujący plik do ~ / .zshrc lub żądanego pliku konfiguracyjnego powłoki:
Następnie zainstaluj wersję węzła i użyj jej.
źródło