Staram się używać homebrew tak często, jak to możliwe. Jaki jest sugerowany sposób instalacji następujących elementów w systemie OS X?
i miejmy nadzieję, że wspiera rozwój:
Staram się używać homebrew tak często, jak to możliwe. Jaki jest sugerowany sposób instalacji następujących elementów w systemie OS X?
i miejmy nadzieję, że wspiera rozwój:
Odpowiedzi:
Korzystanie z homebrew
instalacji nvm
:
brew update
brew install nvm
source $(brew --prefix nvm)/nvm.sh
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:
echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.profile
Jeśli masz problemy z instalacją nvm
za pomocą brew
, możesz zainstalować ją ręcznie (patrz tutaj )
Używając nvm
install node
lub iojs
(możesz zainstalować dowolną wersję):
nvm install 0.10
# or
nvm install iojs-1.2.0
npm
jest 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 . Dzięki @Metallica za wskazanie właściwej drogi (spójrz na komentarz poniżej).npm update -g npm
Korzystanie z npm
instalacji ionic
:
npm install -g ionic
A co z ngCordova
: możesz go zainstalować za pomocą npm
lub 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-cordova
w nim:
npm install --save ng-cordova
Zastosowaniebower
: zainstaluj altankę:
npm install -g bower
A następnie przejdź do folderu projektu i zainstaluj ngCordova
w nim:
bower install --save ngCordova
PS
npm install some_module
tonpm i some_module
npm install -g npm@latest
(od brew info node
i tutaj )
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.
Zamiast tego użyj następującej metody
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
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:
nvm install v8.11.1
Czyste i bezproblemowe. Oznaczałoby to również jako domyślną wersję węzła, więc wszystko powinno być ustawione
nvm install --lts
dostać najnowszy LTS
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
Jestem na to bardzo późno, ale nie podobały mi się inne odpowiedzi
Do zaparzania metę
"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
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
i brew
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 OSX
Moż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
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ł.
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
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: Lex Sheehan
# 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ą .
Zobacz odpowiedź alexpods na resztę.
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.
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/616
Jeś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 to npm
i nie będziesz potrzebować, nvm
jeśli nie zmieniasz wersji.
Pamiętaj o aktualizacji npm
po zainstalowaniu:sudo npm install -g npm@latest
Oto co robię:
curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35
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/590
Następnie zainstaluj wszystko inne, dla każdego projektu, z rozszerzeniem package.json
i npm install
.
Do instalacji z zsh i Homebrew:
brew install nvm
Następnie dodaj następujący plik do ~ / .zshrc lub żądanego pliku konfiguracyjnego powłoki:
export NVM_DIR="$HOME/.nvm"
. "/usr/local/opt/nvm/nvm.sh"
Następnie zainstaluj wersję węzła i użyj jej.
nvm install 7.10.1
nvm use 7.10.1