138 votes

Comment installer uniquement "devDependencies" avec npm ?

J'essaie d'installer UNIQUEMENT les "devDependencies" listées dans mon fichier package.json. Mais aucune des commandes suivantes ne fonctionne comme je l'espère. Toutes les commandes suivantes installent également les dépendances de production, ce que je ne veux pas.

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

Je ne vois pas d'autres moyens de dire au npm d'installer les devDependencies seul. :(

1 votes

Comme aujourd'hui - npm WARN install L'utilisation des --dev est dépréciée. Utilisez --only=dev à la place.

2 votes

La dernière version de NPM (v7) supporte --production=false au lieu de ce qui précède.

1 votes

--production=false ne résout pas la question de l'OP : il installe les dépendances et les devDependencies, pas SEULEMENT les devDependencies.

185voto

Vérifiez le Documentation NPM pour l'installation :

Avec le --production (ou lorsque l'option NODE_ENV est définie sur production), npm n'installera pas les modules figurant dans la liste de la variable d'environnement devDependencies .

Le site --only={prod[uction]|dev[elopment]} aura pour effet d'installer soit uniquement les devDependencies, soit uniquement les non-devDependencies, quel que soit le NODE_ENV.

Avez-vous essayé ce qui suit ?

npm install --only=dev

11 votes

Je viens de découvrir que ma version de npm était 2.x . Je l'ai mis à niveau vers la version 3.x en exécutant la commande npm install npm -g et --only=dev a fonctionné à merveille. Merci pour la réponse.

0 votes

Le problème de version mentionné par @NesanJoseph était également le problème dans mon cas. Dans l'ancienne version de npm, npm install --prod utilisé pour installer des éléments de dependencies dossier. Les deux sites npm install et npm install --dev utilisé pour l'installation à partir de les deux le site dependencies et devDependencies des dossiers !

0 votes

J'ai le même problème que @ricka mentionne en utilisant nvm pour exécuter node v 10.9.0 et npm v 6.4.1 (les deux dernières versions en date du 18/10) et aussi en utilisant --only=dev qui installe toujours les dépendances des applications. En fait, les drapeaux d'installation de npm sont 100% inutiles à ce stade.

45voto

Roger Muscito Points 309
npm i -D

Une version courte facultative.

3 votes

OUI, j'avais fait npm install -D J'ai été surpris et j'ai cherché sur Google. Après plusieurs réponses, j'ai trouvé la vôtre :)

30voto

Jeff Points 157
npm install thePackageName --save-dev

Cela fonctionne bien pour moi.

7 votes

--save-dev enregistre le paquet dans les devDependencies du package.json

1 votes

--save-dev est destiné à signaler que le paquet installé sera installé sous les devDependencies.

3 votes

Plus comme npm install thePackageName --save-dev

15voto

Michael K Points 151

Depuis la version 7.10.0 de npm, vous pouvez omettre certains types de dépendances, mais vous ne pouvez plus omettre "les" dépendances (production). C'est pourquoi il n'y a plus de solution pour ce problème.

4 votes

Je me demande pourquoi cette ligne a été tracée arbitrairement. Les dépendances sont encombrantes et avec les choses qui tournent dans des conteneurs maintenant, il est souvent inutile d'avoir toutes les dépendances installées pour le développement.

5voto

devspeter Points 394

L'option --only=dev n'est plus prise en charge. Pour installer la dépendance dev, exécutez npm install --production=false

7 votes

Correct : --onyl=dev a été supprimé. Faux : --production=false ne remplace pas la question initiale : installer SEULEMENT les dépendances de dev (= ne PAS installer les dépendances)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X