Як використовувати 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.