Следует отметить, что хотя вы просили использовать доморощенный. Использование homebrew для установки nvm не рекомендуется. От github.com/creationix/nvm "Установка Homebrew не поддерживается. Если у вас есть проблемы с nvm, установленным с homebrew, пожалуйста, удалите brew и установите его, следуя приведенным ниже инструкциям, прежде чем сообщать о проблеме. «.
Добавьте последнюю команду в файл .profile, .bashrcили, .zshrcчтобы не запускать ее снова при каждом запуске терминала. Так, например, чтобы добавить его в .profileпрогон:
Если у вас возникли проблемы с установкой с nvmпомощью brewвы можете установить его вручную (см здесь )
Используя nvminstall nodeили iojs(вы можете установить любую версию по вашему желанию):
nvm install 0.10# or
nvm install iojs-1.2.0
npmпоставляется с node(или iojs), поэтому он будет доступен после установки node(или iojs). Вы можете обновить его до последней версии:
$ npm install -g npm@latest
UPD Предыдущая версия была npm update -g npm. Спасибо @Metallica за указание на правильный путь (посмотрите на комментарий ниже).
Используя npminstall ionic:
npm install -g ionic
Как насчет ngCordova: вы можете установить его с помощью npmили bower. Я не знаю, какой вариант больше подходит для вас, это зависит от менеджера пакетов, который вы хотите использовать на стороне клиента. Поэтому я опишу их обоих:
Использованиеnpm : перейдите в папку вашего проекта и установите ng-cordovaв нее:
npm install --save ng-cordova
Использованиеbower : Установить беседку:
npm install -g bower
А затем перейдите в папку вашего проекта и установите ngCordovaв нее:
bower install --save ngCordova
PS
Некоторые команды могут требовать привилегий суперпользователя
Короткий вариант npm install some_moduleISnpm i some_module
Если вы обновляете сам npm, НЕ используйте команду обновления npm. Рекомендованный апстрим способ обновления npm: npm install -g npm@latest(с brew info nodeи здесь )
Джавад Садекзаде
10
Из текущей установки brew nvm: «Обратите внимание, что апстрим попросил нас сделать явное управление nvm через Homebrew, которое они не поддерживают ...» -> Поэтому, вероятно, правильный ответ - не использовать brew для nvm / node.js / io .js.
s.Daniel
7
Я получаю сообщение об ошибке «nvm не совместим с параметром префикса конфигурации npm». Согласно этому сайту ( github.com/creationix/nvm/issues/855#issue-109279804 ), NVM не совместим с Homebrew. Я "заварил удаленный nvm" и установил nvm через команду CURL, и теперь сообщение об ошибке исчезло.
YeeHaw1234
4
Некоторое время я использовал nvm через brew, но тоже получил сообщение «upstream ... явный ... неподдерживаемый». В документации NVM прямо сказано: «Установка Homebrew не поддерживается. Если у вас есть проблемы с установленным homebrew nvm, пожалуйста, удалите brew и установите его, следуя приведенным ниже инструкциям, прежде чем сообщать о проблеме». Так что это, вероятно, не должно быть принятым ответом больше. Я только начал использовать, который работает.
Homebrew установка не поддерживается. Если у вас есть проблемы с установленным в homebrew nvm, пожалуйста, удалите brew и установите его, следуя приведенным ниже инструкциям, перед тем, как сообщать о проблеме.
Я думаю, что вы также nvm install --ltsможете получить последний LTS
skube
1
Спасибо, что подняли это, я спустился в ужасную кроличью нору с nvm и homebrew и только что появился ...
cssidy
Хороший ответ! После большого чтения (установка узлов может быть минным полем), я просто сварил неустановленный узел, вычистил все и использовал nvm для установки узла в Мохаве 10.14.4: stackoverflow.com/q/55735701/123033
Дейв Эверитт
13
Я использую (Node version management)
Вы можете установить его двумя способами
brew install n
или
npm install -g n
Вы можете переключаться между разными версиями узла и io. Вот пример из моего текущего env, когда я вызываю n без параметров:
$ n
io/3.3.1
node/0.12.7
node/4.0.0
node/5.0.0ο node/5.10.1
Вы можете добавить третий способ установки, который безболезнен и оставляет удобную утилиту удаления, если вам это нужно - github.com/mklement0/n-install. Этот метод предлагается в n документах на github.com/tj/n
whatsthatitspat
1
Также следует отметить, что если вы планируете запускать разные версии узлов для разных проектов одновременно (как в 2 разных оконных окнах), то nvm - лучший выбор, поскольку он переключает только пути к узлу в каждом сеансе.
Ниллок
10
Я очень опоздал на это, но мне не понравились другие ответы
Вы НЕ ДОЛЖНЫ использовать brewдля установки узла и npm .
Я видел несколько мест , предполагается , что вы должны использовать Homebrew для установки узла (например , alexpods ответ и в этом Team Treehouse в блоге Опубликовать ) , но установка так вы более склонны впадать в вопросах , как npmи brewоба менеджеры пакетов , и вы должны если менеджер пакетов управляет другим менеджером пакетов, это приводит к проблемам, таким как эта ошибка. Официальные проблемы с npm. Ошибка: отказ от удаления: / usr / local / bin / npm или это не удается удалить модуль npm в OSX
Кроме того, при установке Homebrew npm вам потребуется использовать sudo при установке глобальных пакетов. Поскольку одна из основных идей Homebrew заключается в том, что приложения могут быть установлены без предоставления им корневого доступа, это плохая идея.
Для всего остального
Я бы использовал npm; но вы действительно должны просто следовать инструкции по установке для каждого модуля, следуя инструкциям на веб-сайте, так как они будут более осведомлены о любой проблеме или ошибке, чем кто-либо другой
Так вы предлагаете просто установить его с их загрузки?
Шон Маклин,
6
Если вы ранее установили узел с помощью brew, то у вас будет куча дополнительных файлов, которые вы должны очистить перед установкой узла «правильным способом». Кроме того, мне пришлось добавить несколько настроек в мой скрипт запуска, чтобы все работало гладко.
Я написал сценарий, чтобы сделать это легко.
# 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"
Я написал небольшую статью здесь , что детали , почему это «правильный путь».
Если вам нужно установить iojs, сделайте это с помощью nvm следующим образом:
Удивительно видеть, что все эти менеджеры пакетов и менеджеры версий действительно помогают удалять пользовательские сценарии, хаки и обходные пути, чтобы заставить techstack xyz работать. здорово.
Майкл Трау,
Работал на меня, хотя я начинал с npm и варил оба без порции
Крис Ф. Кэрролл
5
Вам следует установить node.js с помощью nvm, потому что таким образом вам не нужно предоставлять привилегии суперпользователя при установке глобальных пакетов (вы можете просто выполнить «npm install -g packagename», не добавляя «sudo»).
Однако варево отлично подходит для других вещей. Я склонен склоняться к Бауэру всякий раз, когда у меня есть возможность установить что-то с Бауэром.
Установка узла с использованием nvm теперь является моим предпочтительным подходом. По очевидной причине возможности иметь несколько версий узла на моей машине, а также мне не нужно выполнять npm с помощью sudo. Я написал сообщение в блоге garywoodfine.com/install-nodejs-nvm-osx, объясняющее, как установить
Гэри Вудфайн
4
Я согласен с noa - если вам нужно иметь несколько версий node, io.jsто brew не является подходящим решением.
Если вы просто хотите io.jsи не переключаете версии, вы можете установить бинарный дистрибутив io.jsиз https://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz ; это включает npmи вам не понадобитсяnvm если вы не переключаете версии.
Не забудьте обновить npmпосле установки:sudo npm install -g npm@latest
Ответы:
Используя
homebrew
installnvm
:Добавьте последнюю команду в файл
.profile
,.bashrc
или,.zshrc
чтобы не запускать ее снова при каждом запуске терминала. Так, например, чтобы добавить его в.profile
прогон:Если у вас возникли проблемы с установкой с
nvm
помощьюbrew
вы можете установить его вручную (см здесь )Используя
nvm
installnode
илиiojs
(вы можете установить любую версию по вашему желанию):npm
поставляется сnode
(илиiojs
), поэтому он будет доступен после установкиnode
(илиiojs
). Вы можете обновить его до последней версии:UPD Предыдущая версия была
. Спасибо @Metallica за указание на правильный путь (посмотрите на комментарий ниже).npm update -g npm
Используя
npm
installionic
:Как насчет
ngCordova
: вы можете установить его с помощьюnpm
илиbower
. Я не знаю, какой вариант больше подходит для вас, это зависит от менеджера пакетов, который вы хотите использовать на стороне клиента. Поэтому я опишу их обоих:Использование
npm
: перейдите в папку вашего проекта и установитеng-cordova
в нее:Использование
bower
: Установить беседку:А затем перейдите в папку вашего проекта и установите
ngCordova
в нее:PS
npm install some_module
ISnpm i some_module
источник
npm install -g npm@latest
(сbrew info node
и здесь )Обновление 2019: используйте NVM для установки узла, а не Homebrew
В большинстве ответов рекомендуемый способ установки nvm - использовать Homebrew
Не делай этого
На Github Page для nvm это ясно вызвано:
Вместо этого используйте следующий метод
Сценарий клонирует репозиторий nvm в ~ / .nvm и добавляет исходную строку в ваш профиль (~ / .bash_profile, ~ / .zshrc, ~ / .profile или ~ / .bashrc).
А затем используйте nvm для установки узла. Например, чтобы установить последнюю версию LTS, выполните:
Чистый и без проблем. Это пометит это как версию вашего узла по умолчанию, так что вы должны быть полностью настроены
источник
nvm install --lts
можете получить последний LTSЯ использую (Node version management)
Вы можете установить его двумя способами
или
Вы можете переключаться между разными версиями узла и io. Вот пример из моего текущего env, когда я вызываю n без параметров:
источник
Я очень опоздал на это, но мне не понравились другие ответы
Установка Homebrew
Для заварной перспективы
Установка узла & npm
Вы НЕ ДОЛЖНЫ использовать
brew
для установки узла и npm .Я видел несколько мест , предполагается , что вы должны использовать Homebrew для установки узла (например , alexpods ответ и в этом Team Treehouse в блоге Опубликовать ) , но установка так вы более склонны впадать в вопросах , как
npm
иbrew
оба менеджеры пакетов , и вы должны если менеджер пакетов управляет другим менеджером пакетов, это приводит к проблемам, таким как эта ошибка. Официальные проблемы с npm. Ошибка: отказ от удаления: / usr / local / bin / npm или это не удается удалить модуль npm в OSXВы можете прочитать больше на эту тему в посте ДанХерберта « Исправление npm в Mac OS X для домашних пользователей» , где он продолжает:
Для всего остального
Я бы использовал npm; но вы действительно должны просто следовать инструкции по установке для каждого модуля, следуя инструкциям на веб-сайте, так как они будут более осведомлены о любой проблеме или ошибке, чем кто-либо другой
источник
Если вы ранее установили узел с помощью brew, то у вас будет куча дополнительных файлов, которые вы должны очистить перед установкой узла «правильным способом». Кроме того, мне пришлось добавить несколько настроек в мой скрипт запуска, чтобы все работало гладко.
Я написал сценарий, чтобы сделать это легко.
Я написал небольшую статью здесь , что детали , почему это «правильный путь».
Если вам нужно установить iojs, сделайте это с помощью nvm следующим образом:
Чтобы установить brew, просто посмотрите его домашнюю страницу .
Смотрите alexpods ответ на все остальное.
источник
Вам следует установить node.js с помощью nvm, потому что таким образом вам не нужно предоставлять привилегии суперпользователя при установке глобальных пакетов (вы можете просто выполнить «npm install -g packagename», не добавляя «sudo»).
Однако варево отлично подходит для других вещей. Я склонен склоняться к Бауэру всякий раз, когда у меня есть возможность установить что-то с Бауэром.
источник
Я согласен с noa - если вам нужно иметь несколько версий
node
,io.js
то brew не является подходящим решением.Вы можете помочь в поддержке бета-тестирования
io.js
в nvm: https://github.com/creationix/nvm/pull/616Если вы просто хотите
io.js
и не переключаете версии, вы можете установить бинарный дистрибутивio.js
из https://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz ; это включаетnpm
и вам не понадобитсяnvm
если вы не переключаете версии.Не забудьте обновить
npm
после установки:sudo npm install -g npm@latest
источник
Вот что я делаю:
Нет доморощенного для этого.
nvm
скоро будет поддерживать io.js, но не на момент публикации: https://github.com/creationix/nvm/issues/590Затем установите все остальное, для каждого проекта, с помощью
package.json
иnpm install
.источник
Для установки с Zsh и Homebrew:
Затем добавьте следующее в ~ / .zshrc или в нужный файл конфигурации оболочки:
Затем установите версию узла и используйте ее.
источник