Odpowiedzi:
Jeśli chcesz zainstalować moduł npm globalnie, upewnij się, że używasz nowej -g
flagi, na przykład:
npm install forever -g
Ogólne zalecenia dotyczące instalacji modułu npm od wersji 1.0rc (zaczerpnięte z blog.nodejs.org ):
- Jeśli instalujesz coś, czego chcesz użyć w swoim programie, używając wymaga („cokolwiek”), a następnie zainstaluj go lokalnie , w katalogu głównym projektu.
- Jeśli instalujesz coś, co chcesz użyć w swojej powłoce, w wierszu poleceń lub coś, zainstaluj to globalnie , aby pliki binarne znalazły się w zmiennej środowiskowej PATH.
Niedawno skorzystałem z tych zaleceń i poszło całkiem gładko. Zawsze instalowałem na całym świecie (ponieważ jest to narzędzie wiersza poleceń), a wszystkie moje moduły aplikacji lokalnie.
Jeśli jednak chcesz korzystać z niektórych modułów globalnie (np. Express lub mongodb), skorzystaj z tej porady (również z blog.nodejs.org ):
Oczywiście są pewne przypadki, w których chcesz zrobić jedno i drugie. Zarówno Coffee-script, jak i Express to dobre przykłady aplikacji, które mają interfejs wiersza poleceń, a także bibliotekę. W takich przypadkach możesz wykonać jedną z następujących czynności:
- Zainstaluj go w obu miejscach . Poważnie, czy brakuje ci miejsca na dysku? Naprawdę jest w porządku. To małe programy JavaScript.
- Zainstaluj go globalnie, a następnie npm link do skryptu kawy lub npm link express (jeśli korzystasz z platformy obsługującej łącza symboliczne). Następnie wystarczy zaktualizować kopię globalną, aby zaktualizować również wszystkie dowiązania symboliczne.
Pierwsza opcja jest moim zdaniem najlepsza. Proste, jasne, wyraźne. Drugi jest naprawdę przydatny, jeśli zamierzasz ponownie korzystać z tej samej biblioteki w wielu różnych projektach. (Więcej na temat linku npm w przyszłej części.)
Nie testowałem żadnej z tych odmian, ale wydają się one dość proste.
npm prefix
aby uzyskać lokalny prefiks i node prefix -g
zobaczyć globalny prefiks :)
Na komputerze Mac znalazłem, że dane wyjściowe zawierały informacje, których szukałem:
$> 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
Po dodaniu /usr/local/share/npm/bin
do export PATH
mojego wiersza .bash_profile
, zapisaniu go i source
włożeniu, byłem w stanie uruchomić
$> karma --help
normalnie
Lubię używać pliku package.json w katalogu głównym folderu aplikacji.
Oto jeden, którego używam
nvm use v0.6.4
npm install
Miałem problemy z instalacją Express na Ubuntu:
Jeśli z jakiegoś powodu brakuje polecenia NPM, przetestuj polecenie npm za pomocą npm help
. Jeśli nie, wykonaj następujące kroki - http://arnolog.net/post/8424207595/installing-node-js-npm-express-mongoose-on-ubuntu
Jeśli tylko polecenie Express nie działa, spróbuj:
sudo npm install -g express
To sprawiło, że wszystko działa tak, jak ja jestem przyzwyczajony do Windows7 i OSX.
Mam nadzieję że to pomoże!
Musisz mieć uprawnienia administratora,
sudo npm install -g <package name>
W Ubuntu ustaw ścieżkę modułów_węzła w pliku .bashrc
export PATH = "/ home / username / node_modules / .bin: $ PATH"
Możesz nie mieć uprawnień do zapisu, aby zainstalować moduł węzła w lokalizacji globalnej, np. /usr/local/lib/node_modules
W takim przypadku uruchom pakiet npm install -g jako root.