Відповіді:
Якщо ви хочете встановити модуль npm у всьому світі, обов'язково використовуйте новий -g
прапор, наприклад:
npm install forever -g
Загальні рекомендації щодо встановлення npm-модуля після 1,0rc (взято з blog.nodejs.org ):
- Якщо ви встановлюєте те, що ви хочете використовувати у своїй програмі, використовуючи вимагати ("що завгодно"), то встановіть його локально , в корені вашого проекту.
- Якщо ви встановлюєте щось, що ви хочете використовувати у своїй оболонці, у командному рядку чи щось інше, встановіть це глобально , щоб його бінарні файли опинилися у вашій змінній середовища PATH.
Я нещодавно використав цю рекомендацію, і вона пройшла досить гладко. Я встановив назавжди глобально (оскільки це інструмент командного рядка) і всі мої модулі додатків локально.
Однак якщо ви хочете використовувати деякі модулі в усьому світі (наприклад, express або mongodb), скористайтеся цією порадою (також взято з blog.nodejs.org ):
Звичайно, є деякі випадки, коли ви хочете зробити і те, і інше. Кава-скрипт та Express - хороші приклади програм, які мають інтерфейс командного рядка, а також бібліотеку. У цих випадках ви можете зробити одне з наступного:
- Встановіть його в обох місцях . Серйозно, вам не вистачає місця на диску? Це добре, справді. Вони крихітні програми JavaScript.
- Встановіть його глобально, а потім npm link coffee-script або npm link express (якщо ви працюєте на платформі, яка підтримує символічні посилання.) Тоді вам потрібно лише оновити глобальну копію, щоб також оновити всі посилання.
Перший варіант - найкращий на мій погляд. Просте, чітке, явне. Друге дійсно зручно, якщо ви збираєтеся повторно використовувати ту саму бібліотеку у купі різних проектів. (Детальніше про посилання npm у майбутньому внеску.)
Я не перевіряв жодної з цих варіацій, але вони здаються досить відвертими.
npm prefix
щоб отримати локальний префікс, і node prefix -g
побачити глобальний префікс :)
На Mac я знайшов вихід, який містив інформацію, яку я шукав:
$> npm install -g karma
...
...
> ws@0.4.25 install /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
...
$> ls /usr/local/share/npm/bin
karma nf
Після додавання /usr/local/share/npm/bin
до export PATH
рядка в моєму .bash_profile
, збереження та source
продовження, я зміг запустити
$> karma --help
нормально.
Мені подобається використовувати файл package.json у корені папки вашого додатка.
Ось один я використовую
nvm use v0.6.4
npm install
У мене виникли проблеми з установкою Express на Ubuntu:
Якщо з якоїсь причини команда NPM відсутня, випробуйте команду npm за допомогою npm help
. Якщо цього немає, виконайте наступні дії - http://arnolog.net/post/8424207595/installing-node-js-npm-express-mongoose-on-ubuntu
Якщо просто команда Express не працює, спробуйте:
sudo npm install -g express
Це зробило все так, як я звик із Windows7 та OSX.
Сподіваюсь, це допомагає!
Ви повинні мати привілеї суперпользователя,
sudo npm install -g <package name>
В Ubuntu встановіть шлях node_modules у файлі .bashrc
експортувати PATH = "/ home / username / node_modules / .bin: $ PATH"
Можливо, у вас немає дозволу на запис для встановлення модуля вузла у глобальному розташуванні, наприклад /usr/local/lib/node_modules
, у цьому випадку запустіть npm install -g пакет як root.