Як встановити лише “devDependencies” за допомогою npm


88

Я намагаюся встановити ТІЛЬКИ "devDependencies", перелічені у моєму файлі package.json. Але жодна з наступних команд не працює, як я очікую. Усі наступні команди встановлюють виробничі залежності, які також мені не потрібні.

npm install --dev
npm install --only=dev
npm install --only-dev

Я не можу придумати жодних способів сказати npm встановлювати devDependencies поодинці. :(


як сьогодні - npm ПОПЕРЕДЖЕННЯ встановлення Використання --devопції застаріло. Використовуйте --only=devзамість цього.
Андрій Лещук

Відповіді:


136

Перевірте NPM-документи для встановлення :

З --productionпрапором (або коли для NODE_ENVзмінної середовища встановлено виробництво), npm не встановлюватиме модулі, перелічені в devDependencies.

--only={prod[uction]|dev[elopment]}Аргумент викликатиме або тільки devDependencies або тільки не-devDependencies бути встановлені незалежно від NODE_ENV.

Ви пробували наступне?

npm install --only=dev

10
Щойно я дізнався, що моя версія npm була 2.x. Я оновив його до v3.x, запустивши команду, npm install npm -gі параметр --only = dev працював як шарм. Дякую за відповідь.
Несан Раджендран

Проблема версії, згадана @NesanJoseph, також була проблемою в моєму випадку. У попередній версії npm npm install --prodвикористовується для встановлення елементів із dependenciesпапки. Обидва npm installі npm install --devвикористовуються для встановлення як з папок, такdependencies і devDependencies!
Shiyaz

Я отримую ту саму проблему @ricka згадує використання nvm для запуску node v 10.9.0 та npm v 6.4.1 (обидві останні версії станом на 10/18), а також використання --only = dev все ще встановлює залежності додатків . В основному прапорці встановлення npm на даний момент 100% марні.
Генрі

Не працює у мене (вузол v12.19.0, npm v6.14.8). Можливо, це щось пов’язане з цим номером, відкритим з квітня 2016 року: github.com/npm/npm/issues/12184
Fapaz,

23
npm install thePackageName --save-dev

Для мене це чудово працює.


3
--save-devзберігає пакет до devDependencies в package.json
Рашомон

1
--save-dev має на меті позначити, що встановлений пакет буде встановлений за залежностями dev
Daniel Dubovski

3
Більше схоже наnpm install thePackageName --save-dev
Deke

3
Це встановить одне явне ім’я пакета та збереже його у залежностях розробника. Питання в тому, як встановити лише devDependencies із пакета package.json.
Lalnuntluanga Chhakchhuak

1
Не відповідає критеріям запитання. Ваша відповідь полягає в тому, щоб встановити: 1. один пакет 2. питання задає питання про те, як встановити речі, які вже є в пакеті.json, але лише у списку залежностей.
Urasquirrel

15
npm i -D

Необов’язкова коротка версія.


ТАК, я зробив, npm install -Dі це спрацювало. так що я був здивований і погуглив це, після багатьох відповідей я бачу вашу відповідь :)
its4zahoor

2

Запустившись npm install, він встановить всі залежності під devDependencies `або залежностями .

Для встановлення та збереження пакунків як залежностей розробника в package.json npm install package_name --save-devабо опції pass-D

Для встановлення всіх пакунків під devDependencies , npm install --only=dev

Для встановлення та збереження пакунків як prod або лише залежностей у package.json, npm install package_name --save-prodабо опції pass -Pабоnpm install package_name

Для встановлення всіх пакунків під залежностями або залежностями Prod встановіть змінну Environment NODE_ENV=productionабо передайте її за допомогою команди NODE_ENV=production npm installабоnpm install --only=prod

Замість того, щоб використовувати installкоманду npm, як npm installви можете просто використовувати iяк npm i, не встановлюючи.

Довідково

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