web-dev-qa-db-fra.com

Où npm installe-t-il les packages?

Quelqu'un peut-il me dire où puis-je trouver les modules Node.js, que j'ai installés avecnpm?

700
Tronic

Bibliothèques globales

Vous pouvez exécuter npm list -g pour voir où les bibliothèques globales sont installées.

Sur les systèmes Unix, ils sont normalement placés dans /usr/local/lib/node ou /usr/local/lib/node_modules lorsqu’ils sont installés globalement. Si vous définissez la variable d'environnement NODE_PATH sur ce chemin, les modules peuvent être trouvés par noeud.

Windows XP - %USERPROFILE%\AppData\npm\node_modules
Windows 7, 8 et 10 - %USERPROFILE%\AppData\Roaming\npm\node_modules

Bibliothèques non globales

Les bibliothèques non globales sont installées dans le sous-dossier node_modules du dossier dans lequel vous vous trouvez. 

Vous pouvez exécuter npm list pour voir les bibliothèques non globales installées pour votre emplacement actuel. 

846
Decko

La commande npm root vous indiquera le répertoire d’installation effectif de vos paquets npm.

Si votre répertoire de travail actuel est un package de nœud ou un sous-répertoire d'un package de nœud, npm root vous indiquera le répertoire d'installation local. npm root -g affichera la racine de l'installation globale quel que soit le répertoire de travail en cours. 

Voir la documentation.

461
Joe Hawkins

Utilisez la commande npm root -g pour connaître votre chemin global npm.

Exemple:

$ npm root -g
/usr/local/lib/node_modules
171
Ravi

Pour les modules installés globalement:

Les autres réponses vous donnent des réponses spécifiques à la plate-forme, mais voici une réponse générique:

Lorsque vous installez le module global avec npm install -g something, npm recherche une variable de configuration prefix pour savoir où installer le module.

Vous pouvez obtenir cette valeur en exécutant npm config get prefix

Pour afficher tous les modules globaux disponibles dans ce dossier, utilisez npm ls -g --depth 0 (depth 0 afin de ne pas afficher leurs dépendances).

Si vous souhaitez modifier le chemin d'accès global aux modules, utilisez npm config edit et mettez prefix = /my/npm/global/modules/prefix dans le fichier.

Lorsque vous utilisez des outils tels que nodist , ils modifient le chemin d’installation par défaut de la plate-forme des modules npm globaux.

71
jakub.g

Sur Windows, j’ai utilisé npm list -g pour le découvrir. Par défaut, mes packages (globaux) étaient installés sur C:\Users\[Username]\AppData\Roaming\npm.

59
9swampy

Dans les versions antérieures de NPM, les modules étaient toujours placés dans/usr/local/lib/node ou à tout autre endroit où vous avez spécifié la racine npm dans le fichier .npmrc. Cependant, dans NPM 1.0+, les modules sont installés à deux endroits. Vous pouvez avoir des modules installés localement dans votre application dans /.node_modules ou les installer globalement en utilisant ce qui précède.

Pour plus d'informations, rendez-vous sur https://github.com/isaacs/npm/blob/master/doc/install.md .

16
Nick Campbell

Si vous recherchez le fichier exécutable installé par npm, peut-être parce que vous souhaitez le mettre dans votre PATH, vous pouvez simplement le faire.

npm bin

ou

npm bin -g
13
Ken Goodridge

Si le module a été installé avec l'indicateur global (-g), vous pouvez obtenir l'emplacement du parent en exécutant la commande suivante 

npm get prefix

ou 

npm ls -g --depth=0

qui imprimera l'emplacement avec la liste des modules installés

À votre santé :-)

12
dheeran

Pas de réponse directe mais peut aider ....

Npm possède également un dossier de cache, qui peut être trouvé en exécutant npm config get cache (%AppData%/npm-cache sous Windows). 

Les modules npm sont d’abord téléchargés ici, puis copiés dans le dossier global npm (%AppData%/npm/Roaming sous Windows) ou dans un dossier spécifique au projet (your-project/node_modules).

Donc, si vous voulez suivre les paquets npm, et certains comment, la liste de tous les paquets npm téléchargés (si le cache npm n'est pas nettoyé), consultez ce dossier. La structure du dossier est comme {cache}/{name}/{version}

Cela peut également aider https://docs.npmjs.com/cli/cache

11
Alireza Fattahi

Le plus simple serait de faire 

npm list -g

pour lister le paquet et voir son emplacement installé.

J'avais installé npm via chololatey, donc l'emplacement est

C:\MyProgramData\chocolatey\lib\nodejs.commandline.0.10.31\tools\node_modules

C:\MyProgramData\est un emplacement de dépôt chocolaté.

9
Tharaka

Vous pouvez trouverglobally modules installés par la commande

npm list -g

Il vous fournira l'emplacement où les modules node.js ont été installés.

C:\Users\[Username]\AppData\Roaming\npm

Si vous installez les modules node.jslocalementdans un dossier, vous pouvez taper la commande suivante pour afficher l'emplacement.

npm list
5
Abdul Alim Shakir

De la docs :

Les packages sont déposés dans le dossier node_modules sous le préfixe . Lorsque vous installez localement, cela signifie que vous pouvez require ("packagename") pour charger son module principal, ou require ("nom_package/lib/chemin/vers/sous/module") pour charger d'autres modules.

Les installations globales sur les systèmes Unix se trouvent dans {prefix}/lib/node_modules . Les installations globales sous Windows vont dans le répertoire {prefix}/node_modules (c’est-à-dire, aucun dossier Lib.)

Les packages Scoped sont installés de la même manière, sauf qu'ils sont regroupés ensemble dans un sous-dossier du dossier node_modules correspondant avec le fichier nom du préfixe d'étendue par le symbole @, par ex. npm install @ myorg/package placerait le paquet dans {prefix}/node_modules/@ myorg/package. Voir la portée pour plus de détails.

Si vous souhaitez avoir besoin d'un paquet, installez-le localement.

Vous pouvez obtenir votre {prefix} avec npm config get prefix. (Utile lorsque vous avez installé node avec nvm).

Lire à propos de localement .
En savoir plus sur globalement .

3
Randall Flagg

De la docs :

Dans npm 1.0, il y a deux façons d'installer des choses:

  • globalement: cela supprime les modules dans {prefix}/lib/node_modules et place les fichiers exécutables dans {prefix}/bin, où {prefix} est habituellement quelque chose comme /usr/local. Il installe également les pages de manuel dans {prefix}/share/man, s’ils sont fournis.

  • localement - Cela installe votre paquet dans le répertoire de travail en cours. Les modules de noeud vont dans ./node_modules, les exécutables vont dans ./node_modules/.bin/ et les pages de manuel ne sont pas installées du tout.

Vous pouvez obtenir votre {prefix} avec npm config get prefix. (Utile lorsque vous avez installé node avec nvm).

3
edelans

Dans Ubuntu 14.04, ils sont installés à 

/usr/lib/node_modules

2
Ashutosh Singh

Pour obtenir une liste compacte sans dépendances, utilisez simplement

npm list -g --depth 0
2
Adam Bubela

Comme le disent les autres réponses, le mieux est de faire 

npm list -g

Cependant, si vous avez un grand nombre de packages npm installés, le résultat de cette commande peut être très long et il est très pénible de faire défiler l'écran vers le haut (il n'est parfois même pas possible de faire défiler si loin).

Dans ce cas, dirigez-le vers le programme more, comme ceci

npm list -g | more
2
Raphi

Windows 10: Quand j'ai exécuté npm prefix -g, j'ai remarqué que l'emplacement d'installation était à l'intérieur du chemin d'accès du git Shell que j'avais l'habitude d'installer. Même lorsque cet emplacement était ajouté au chemin, la commande du package installé globalement ne serait pas reconnue. Fixé par:

  1. en cours npm config edit 
  2. changer le préfixe en 'C:\Utilisateurs\nom d'utilisateur\AppData\Roaming\npm' 
  3. ajouter ce chemin à la variable de chemin système
  4. réinstaller le paquet avec -g.
1
Marc Sloth Eastman

Btw, npm va rechercher node_modules dans les dossiers parents (jusqu’à très root) si impossible à trouver en local.

1
Vitaliy Markitanov

Si vous essayez d'accéder à votre répertoire global à partir du code, vous pouvez revenir en arrière de process.execPath . Par exemple, pour trouver wsproxy, qui se trouve dans {NODE_GLOBAL_DIR}/bin/wsproxy, vous pouvez simplement:

path.join(path.dirname(process.execPath), 'wsproxy')
1
A T

Windows 7, 8 et 10 -% USERPROFILE%\AppData\Roaming\npm\node_modules. 

Remarque: Si vous êtes quelque part dans le dossier, tapez cd .. jusqu'à ce que vous soyez dans le répertoire C:. Ensuite, tapez cd %USERPROFILE%\AppData\Roaming\npm\node_modules. Et comme par magie, %USERPROFILE% deviendra Users\YourUserProfile\. Je voulais juste clarifier les idées mentionnées par Decko dans la première réponse. npm list -g liste tous les bits que vous avez installés globalement. Si vous avez besoin de trouver votre projet npm package puis cd 'your angular project xyz' associé, exécutez npm list. Il montrera la liste des modules dans npm package. Il vous donnera également la liste des dependencies manquants et vous devrez peut-être exécuter efficacement ce projet.

0
surendrapanday

Développer d'autres réponses - 

npm list -g 

va vous montrer l'emplacement des paquets installés globalement.

Si vous souhaitez exporter cette liste dans un fichier que vous pouvez ensuite rechercher facilement dans votre éditeur de texte:

npm list -g > ~/Desktop/npmfiles.txt

0
TWLATL