2015-09-03 5 views
2

Мне нужно установить узел и npm. Перед установкой я немного искал лучший способ установить эти вещи. То, что я нашел:Проблемы при установке узла и npm

  1. Установите nvm
  2. Установка node с помощью nvm
  3. Установите nvm alias default так, что node будет доступен по умолчанию.
  4. Вы также получите npm при установке node.
  5. Измените каталог глобальных модулей на некоторый путь внутри вашего HOME, так что при установке пакетов с глобальными областями с использованием npm вам не нужно использовать sudo.
  6. Установить npm с использованием npm в качестве глобального модуля.
  7. Добавить новый глобальный каталог модуля bin нашей переменной $PATH среды

Но после того, как делать это npm не работает. Его подача следующее сообщение об ошибке:

$ npm install -g yo 

> [email protected] postinstall /Users/aapa/.node_modules_global/lib/node_modules/yo/node_modules/cross-spawn/node_modules/spawn-sync 
> node postinstall 

/Users/aapa/.node_modules_global/bin/yo -> /Users/aapa/.node_modules_global/lib/node_modules/yo/lib/cli.js 

> [email protected] postinstall /Users/aapa/.node_modules_global/lib/node_modules/yo 
> yodoctor 

sh: yodoctor: command not found 
npm ERR! Darwin 14.3.0 
npm ERR! argv "node" "/Users/aapa/.node_modules_global/bin/npm" "install" "-g" "yo" 
npm ERR! node v0.12.7 
npm ERR! npm v2.14.1 
npm ERR! file sh 
npm ERR! code ELIFECYCLE 
npm ERR! errno ENOENT 
npm ERR! syscall spawn 

npm ERR! [email protected] postinstall: `yodoctor` 
npm ERR! spawn ENOENT 
npm ERR! 
npm ERR! Failed at the [email protected] postinstall script 'yodoctor'. 
npm ERR! This is most likely a problem with the yo package, 
npm ERR! not with npm itself. 
npm ERR! Tell the author that this fails on your system: 
npm ERR!  yodoctor 
npm ERR! You can get their info via: 
npm ERR!  npm owner ls yo 
npm ERR! There is likely additional logging output above. 

npm ERR! Please include the following file with any support request: 
npm ERR!  /Users/aapa/npm-debug.log 

Здесь все фактические команды я побежал:

#1. Install nvm 
$curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.26.1/install.sh | bash 

#2. Install node using nvm 
$nvm install node 
# This will install the latest stable version of node. Here `node` is an alias to stable 
#node -> stable (-> v0.12.7) (default) 
#stable -> 0.12 (-> v0.12.7) (default) 

#3. Set the nvm alias default so that the node will be available by default. 
$nvm alias default node 

#4. You will also get npm while installing node. 
$ which npm 
/Users/aapa/.nvm/versions/node/v0.12.7/bin/npm 

#5. Change the global modules directory to some path inside your HOME so that while installing global scoped packages using npm you don't have to use sudo. 
$ npm config get prefix 
/Users/aapa/.nvm/versions/node/v0.12.7 
$ cd && mkdir .node_modules_global 
$ npm config set prefix=$HOME/.node_modules_global 
$ npm config get prefix 
/Users/aapa/.node_modules_global 
$ cat .npmrc 
prefix=/Users/aapa/.node_modules_global 

#6. Install npm again using npm as a global module. 
$ npm install npm --global 
/Users/aapa/.node_modules_global/bin/npm -> /Users/aapa/.node_modules_global/lib/node_modules/npm/bin/npm-cli.js 
[email protected] /Users/aapa/.node_modules_global/lib/node_modules/npm 

#7. Add new global module directory's `bin` to our `$PATH` environment variable 
$ echo -e '\n\n#adding npm global module location to path\nexport PATH="$HOME/.node_modules_global/bin:$PATH"' >> ~/.bash_profile 
$ source ~/.bash_profile 

# check 
$ which npm 
/Users/aapa/.node_modules_global/bin/npm 

Есть также некоторые другие родственные ресурсы по сети:

  1. SO- NPM permission error while installing - здесь ответы Предложенные использовать sudo, которого я стараюсь избежать.
  2. Yeoman issues - can not install yeoman on my mac running OS X Yosemite 10.10.1 - Я думаю, что я сделал все по решению здесь, кроме решения здесь используется .bashrc, и я использовал .bash_profile.

Я не уверен, где я делаю это неправильно. Есть идеи?

ответ

0

Я думаю, что лучшим и простым способом было бы просто загрузить узел с сайта: nodejs.org и установить его.

после этого открыть ЦМД, перейти к загрузке nodejs папку оттуда и введите

npm install package-name 

, если вы хотите установить его в глобальном масштабе, то использовать -g как

npm install package-name -g 
0

Самым простым решением является просто не делать шаги 5, 6 и 7.

Недостатком является то, что вы должны установить свои глобальные блоки отдельно для каждой версии узла, который вы используете, но это звучит так, будто вы aren ' t очень часто.

 Смежные вопросы

  • Нет связанных вопросов^_^