Як використовувати npm з node.exe?


108

Я завантажив Windows Binary (.exe) з nodejs з головної сторінки .

Як я можу встановити та використовувати npm(Менеджер пакетів вузлів)?


Бінарний файл Windows становить 0,5.x, що є нестабільною версією node.js. Я рекомендую не використовувати це у виробництві, однак він корисний для розвитку. Ви можете зачекати 0,6 (незабаром!), Перш ніж запустити node.js у Windows на виробництві.
Райнос

5
Якщо ви знайдете це запитання через google, Node.js для Windows поставляється з npm, який надається (зауважте: це сценарій, який проходить найвищу версію, а не справжній виконуваний файл).
Майк 'Помакс' Камерманс

Відповіді:


58

Поточний інсталятор Windows від nodejs.org станом на v0.6.11 (2012-02-20) встановить NPM разом із NodeJS.

ПРИМІТКИ:

  • На даний момент найкраща ставка для 64-бітної версії
  • Шлях встановлення 32-бітного вузла - "Файли програми (x86)" у 64-бітних вікнах.
  • Можливо, вам також знадобиться додати лапки до оператора шляху у змінних оточення, це здається лише в деяких випадках, які я бачив.
  • У Windows глобальний шлях встановлення фактично знаходиться у довіднику профілю вашого користувача
    • %USERPROFILE%\AppData\Roaming\npm
    • %USERPROFILE%\AppData\Roaming\npm-cache
    • ПОПЕРЕДЖЕННЯ. Якщо ви робите тимчасові події чи іншу автоматизацію як інший користувач, переконайтеся, що ви працюєте npm installяк цей користувач. Деякі модулі / утиліти повинні бути встановлені в усьому світі.
    • ПОМИЛКИ ВСТАНОВЛЕННЯ. Можливо, вам доведеться створити ці каталоги або додати ...\npmкаталог до контуру своїх користувачів самостійно.

Щоб змінити "глобальне" місцеположення для всіх користувачів на більш відповідне спільне глобальне місцезнаходження %ALLUSERSPROFILE%\(npm|npm-cache)(зробіть це як адміністратор):

  • створити [NODE_INSTALL_PATH]\etc\каталог
    • це потрібно, перш ніж спробувати npm config --global ...дії
  • створити глобальне (адміністраторне) розташування для модулів npm
    • C:\ProgramData\npm-cache - сюди перейдуть npm-модулі
    • C:\ProgramData\npm - сюди піде двійкові скрипти глобально встановлених модулів
    • C:\ProgramData\npm\node_modules - сюди підуть глобально встановлені модулі
    • встановити дозволи доцільно
      • адміністратори: модифікувати
      • аутентифіковані користувачі: читати / виконувати
  • Встановлення глобальних налаштувань конфігурації (командний рядок адміністратора)
    • npm config --global set prefix "C:\ProgramData\npm"
    • npm config --global set cache "C:\ProgramData\npm-cache"
  • Додайте C:\ProgramData\npmдо змінної середовища "Ваша система"

Якщо ви хочете %LOCALAPPDATA%\(npm|npm-cache)замість цього змінити "глобальне" місцезнаходження вашого користувача на шлях:

  • Створіть необхідні каталоги
    • C:\Users\YOURNAME\AppData\Local\npm-cache - сюди перейдуть npm-модулі
    • C:\Users\YOURNAME\AppData\Local\npm - сюди піде двійкові сценарії для встановлених модулів
    • C:\Users\YOURNAME\AppData\Local\npm\node_modules - сюди підуть глобально встановлені модулі
  • Налаштування npm
    • npm config set prefix "C:\Users\YOURNAME\AppData\Local\npm"
    • npm config set cache "C:\Users\YOURNAME\AppData\Local\npm-cache"
  • Додайте новий шлях в хвилину до середовища PATH.
    • setx PATH "%PATH%;C:\Users\YOURNAME\AppData\Local\npm"

Для початківців деякі з npm-модулів, якими я скористався найбільше, є наступні.

  • axios - для більш складних повідомлень http / get
  • isomorphic-fetch - для http (s) публікації / отримання запитів
  • node-mailer - smtp-клієнт
  • mssql - інтерфейс і бібліотека драйверів для запитів MS SQL Server (обгортання нудно )

Більш просунуті варіанти JS ...

  • async / await - функції асинхронізації, підтримувані через babel

Для тестування я шукаю наступні інструменти ...

  • мока - рамки тестування
  • chai - бібліотека тверджень, мені подобається chai.expect
  • sinon - шпигуни та заглушки та прокладки
  • sinon-chai - розширити чай за допомогою інструментів твердження синона
  • babel-istanbul - звіти про висвітлення
  • vic - паралельне тестування, твердження, глузування, звіти про висвітлення в одному інструменті
  • babel-plugin-rewire - трохи легше для деяких насмішкувальних умов проти жарту

Веб-інструменти.

  • вебпакет - пакет модулів, модулі стилю вузла пакету для використання браузера
  • дівочий - конвертувати сучасний синтаксис JS (ES2015 +) для середовища розгортання.

Якщо ви будуєте його ...

  • shelljs - утиліти оболонки для сценаріїв вузлів ,. Раніше я використовував gulp / grunt, але в наші дні буде scriptsкаталог, на який посилається в package.json сценаріях через npm. Ви можете використовувати інструменти gulp всередині простих сценаріїв.

Станом на 25 лютого, ця помилка, здається, виправлена; Я можу запустити npm з% path% (або це, або iisnode виправив це для мене)
Dan Davies Brackett

12
Щоб використовувати NPM у Windows, використовуйте Node.js Command Prompt. Просто спроба запуску npmз будь-якого іншого командного рядка не вийде.
Daniel AA Pelsmaeker

Хороший список модулів для початківців. Замість використання простого Tedious використовуйте node-mssql, щоб обернути Tedious для набагато простішого api.
Крістіан Вестербек

Мені довелося вручну створити каталог / папку C: \ Users \ kevitt \ AppData \ Roaming \ npm саме зараз, перш ніж я міг встановити свій перший пакет.
Кенні Евітт

@ DanielA.A.Pelsmaeker Я НІКОЛИ не працював npm у Windows за допомогою командного рядка Node.js ; не кажучи, що це не життєздатний метод. Практично будь-який термінал або оболонка буде працювати, якщо людина, яка її використовує, знає, що вони роблять! Я використовую npmкоманди майже кожен день; і BASH - це мій перехід, якщо я застряг за допомогою Windows; але, робоча система Windows CMD & PowerShell, BASH, WSL (BASH, ZSH, Fish) ... всі вони працюють чудово. " Просто спроба запустити npm з будь-якого іншого командного рядка не вийде. " Цей вислів ніби говорить, що ви повинні використовувати VIM для написання JavaScript, і будь-який інший IDE не працюватиме. #facepalm
Rockin4Life33

43

Коли Node.js не встановлено за допомогою інсталятора msi , npm потрібно встановити вручну.

встановлення npm

По-перше, скажімо, у нас папка node.exe знаходиться в папці c:\nodejs. Тепер до налаштування npm -

  1. Завантажте останню версію npm від GitHub ( https://github.com/npm/npm/releases )
  2. Створіть папки c:\nodejs\node_modulesтаc:\nodejs\node_modules\npm
  3. Розпакуйте завантажений zip-файл у c:\nodejs\node_modules\npmпапці
  4. Скопіюйте НПМ і npm.cmd файли c:\nodejs\node_modules\npm\binв c:\nodejsпапці

Щоб перевірити npm , відкрийте cmd.exeробочий каталог змінити на c:\nodejsта ввести npm --version. Ви побачите версію npm якщо вона налаштована правильно.

Після того, як налаштування завершено, його можна використовувати для встановлення / видалення пакунків локально або глобально. Для отримання додаткової інформації про використання npm відвідайте https://docs.npmjs.com/ .

В якості останнього кроку ви можете додати шлях c:\nodejsдо папки вузла до pathзмінної середовища, так що вам не доведеться вказувати повний шлях під час запуску node.exeта npmв командному рядку.


Працював як шарм, Спасибі.
Містер Рошан Павар

найкраща відповідь на даний момент. найкращий, хто проголосував, отримав непрацюючу посилання.
Аарон

38

npm можна завантажити (без встановлення) звідси:

http://nodejs.org/dist/npm/

https://github.com/npm/npm/releases


9
Просто витягніть архів у ту ж папку, що і node.exe, щоб npm.cmd знаходився на тому ж рівні, що і node.exe.
Ezward

1
Це хороший спосіб "встановити" вузол і npm, якщо у вас немає прав адміністратора. Після того як ви обидва НПМ і вузол там, додати , що в вашому шляху: set NODE=%USERPROFILE%\nodejsі , PATH=%PATH%;%NODE%і ви добре йти ...
djKianoosh

@djKianoosh, це прямо навколо. Все, що вам потрібно, це set path=your/folder/containing/node. Наприклад, set path=%userprofile%\nodejs. Потім зателефонуйте npmпісля цього, ось і все. Команда set pathвпливає лише на ваш поточний сеанс cmd, а не в усьому світі в реєстрі, тому не потрібно його скасовувати.
Pacerier

@Ezward, вони вам не потрібні в одній папці. Дивіться коментар вище.
Пейс’єр

це правильно @Pacerier. У мене є щось подібне сценарій для запуску входу для автоматизації. Головною проблемою на підприємстві є відсутність прав адміністратора та проксі-серверів / брандмауерів.
djKianoosh

11

Щойно я встановив останню версію вузла (0.6.12) в Windows 7 за допомогою msi (node-v0.6.12.msi).

npm вже поставляється з ним, не потрібно включати його окремо.

Я зіткнувся з проблемою дозволу під час запуску npm (npm install mysql), з шляху, де проживали мої nodejs, тобто C: \ Program Files (x86) \ nodejs

Потім я дотримувався наступних кроків:

1) Додані C:\Program Files (x86)\nodejs\npmв змінні середовища - системні змінні.

2) повернувся до тільки C:\в командному рядку і дав команду - npm install mysql- і voila! це спрацювало..

Сподіваюся, це допомагає.


куди завантажити цей msi? я не бачу його на веб-сайті.
ві

@vee, чи не правильно на головній сторінці nodejs.org/download . Шукати "msi".
Pacerier

7

Я запускаю node.js у Windows з npm. Трюк - просто використовувати cygwin. Я слідував за цим посиланням у https://github.com/joyent/node/wiki/Building-node.js-on-Cygwin-(Windows) . Але переконайтеся, що ви використовуєте версію 0.4.11 nodejs або npm не вдасться!


9
cygwin ніколи не повинен бути відповіддю. Це неправильний спосіб вирішити ці проблеми.
Троя Говард

З вузлом 0.6 ви можете легко використовувати вузол під Windows, але багато модулів вузлів, які залежать від бінарних файлів, не підтримують вікна, і тоді ви знову повернетесь до того пункту, коли вам потрібно щось на зразок середовища Unix.
мальте

1
Насправді @Troy Howard вам не доведеться так сильно працювати з Windows, якщо ви використовуєте cygwin. Це одне є величезним плюсом, оскільки воно усуває джерело більшості його проблем.
JaneGoodall

1
@TroyHoward Я б пішов на крок далі і сказав, що Windows ніколи не повинна бути відповіддю для будь-якої веб-розробки.
Ноз

На крок далі, ніж ваш крок до перезавантаження, Windows Visual Studio і .NET чудово підходять для веб-розробки, включаючи PHP та Perl, які працюють на IIS.
Jules Bartow

4

Я щойно встановив звідси 64-бітний Node.js v0.12.0 для Windows 8.1 . Це приблизно 8 Мб, і оскільки це MSI, ви просто двічі клацніть для запуску. Він автоматично налаштує ваші доріжки навколишнього середовища тощо.

Тоді, щоб отримати командний рядок, це просто [Win-Key]+[S] пошук, а потім введіть "node.js" як вашу пошукову фразу.

Виберіть Node.js Command Promptзапис НЕNode.js запис.

Обидва дадуть вам командний рядок, але насправді працюватиме лише перший. npm вбудований у цю завантаження, тож просто npm -whateverпід запитом.


Це вирішило питання, щодо якого я прийшов сюди - після встановлення node.js у Windows через інсталятор MSI я все ще не міг отримати доступ до npm з командного рядка, і запуск у вікні "node.js" просто видав помилку, яку мені потрібно було використовувати командний рядок. Я був впевнений, що мені не доведеться додавати шляхи вручну - тоді я виявив, що мені потрібно бігти в спеціальну оболонку вузла, на що вказує ця відповідь. Дякую.
Dan Nissenbaum

3

Використовуйте менеджер пакетів Windows, наприклад, шоколадний. Спочатку встановіть шоколад, як зазначено на його домашній сторінці . Це повинен бути вітер

Потім, щоб встановити Node JS (Install), запустіть таку команду з командного рядка або з PowerShell:

C:> cinst nodejs.install


Це зараз працювало для мене. Шлях у Windows 8.1 правильно встановлено на: C: \ Program Files \ nodejs. Але я не можу запустити npm, якщо не перейду на цей шлях. Але якщо я запустив рядок cmd рядка nodejs, він встановлює його так, що він працює. Він налаштовує C: \ Windows \ System32 \ cmd.exe / k "C: \ Program Files \ nodejs \ nodevars.bat" і працює у "C: \ Program Files \ nodejs \" Можливо, c: \> cinst nodejs зробив що Я побіг перед cinst nodejs.install. Я не впевнений. (чому я не можу виправити старий коментар?)
Патрік Ліндстрем

Ви можете редагувати власні коментарі після публікації їх, протягом 5 хвилин. meta.stackexchange.com/questions/459/… . Здається, що ви можете принаймні видалити перші два коментарі.
Крістіан Вестербек

2

Ось посібник від @CTS_AE про те, як використовувати NPM з автономним node.exe: https://stackoverflow.com/a/31148216/228508

  1. Завантажте самостійно node.exe з nodejs.org
  2. Візьміть блискавку для випуску NPM від github https://github.com/npm/npm/releases
  3. Створіть папку з назвою: node_modules в тій же папці, що і node.exe
  4. Витягніть NPM-zip у папку node_modules
  5. Перейменуйте добуту папку npm у npm та видаліть будь-яку версію, тобто: npm-3.3.4 -> npm.
  6. Скопіюйте npm.cmd з папки / npm / bin / у кореневу папку з node.exe

0

Я тільки що встановив Node.js вперше, і він включає NPM, який можна запустити з Windows cmd. Однак переконайтеся, що ви запускаєте його як адміністратор. Клацніть правою кнопкою миші на cmd та виберіть "запустити як адміністратор". Це дозволило мені викликати npm-команди.


-1

Шукайте всі файли .npmrc у вашій системі.

Перевірте, чи правильно вказаний шлях. Якщо ні, видаліть неправильний шлях.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.