web-dev-qa-db-fra.com

Comment désinstaller un paquet installé à l'aide du lien npm?

Lors de l'installation d'un package de noeud à l'aide de Sudo npm link dans le répertoire du package, comment puis-je désinstaller le package une fois le développement terminé?

npm link installe le package en tant que lien symbolique dans l'emplacement global du package du système ('/ usr/local/lib`). Cela vous permet de tester le paquet tout en le développant, sans avoir à l'installer encore et encore.

Quelle commande npm dois-je exécuter pour supprimer le lien à nouveau?

132
nwinkler

Le package peut être désinstallé à l'aide de la même commande uninstall ou rm que celle utilisée pour supprimer les packages installés. La seule chose à garder à l'esprit est que le lien doit être désinstallé globalement - l'indicateur --global doit être fourni.

Afin de désinstaller le package foo lié globalement, vous pouvez utiliser la commande suivante (utilisez Sudo si nécessaire, en fonction de votre configuration et de vos autorisations).

Sudo npm rm --global foo

Cela désinstallera le paquet.

Pour vérifier si un paquet est installé, la commande npm ls peut être utilisée:

npm ls --global foo
145
nwinkler

vous pouvez utiliser unlink pour supprimer le lien symbolique. 

Par exemple:

cd ~/projects/node-redis 
npm link                 
cd ~/projects/node-bloggy
npm link redis             # links to your local redis

Pour réinstaller à partir de votre package.json:

npm unlink redis
npm install

https://www.tachyonstemplates.com/npm-cheat-sheet/#unlinking-a-npm-package-from-an-application

107
Blair Anderson

lien npm douleur:

-Nom du module gulp-task

-Nom du projet projet-x


Vous voulez lier gulp-task :

1: Allez dans le répertoire gulp-task puis faites npm link ceci va créer un lien symbolique entre le projet et vos modules globaux

2: Accédez à votre projet projet-x puis faites npm install en vous assurant de supprimer le répertoire node_modules actuel. 


Maintenant, vous voulez supprimer cette folie et utiliser le vrai gulp-task , nous avons deux options: 

Option 1: dissocier via npm:

1: Accédez à votre projet et faites npm unlink gulp-task pour supprimer le module installé lié. 

2: Accédez au répertoire gulp-task et exécutez npm unlink pour supprimer le lien symbolique. Notez que nous n'avons pas utilisé le nom du module

3: célébrer 


Et si cela ne fonctionnait pas, vérifiez en localisant votre module global installé. My are location ls -la /usr/local/lib/node_modules/ si vous utilisez nvm ce sera un chemin différent 


Option 2: Supprimer le lien symbolique comme un guru Linux normal

1: localisez vos dépendances globales cd /usr/local/lib/node_modules/

2: la suppression du lien symbolique utilise simplement la commande rm 

rm gulp-task assurez-vous de ne pas avoir / à la fin

rm gulp-task/ est faux ????????

rm gulp-task ✔️

14
KhaledMohamedP

Si vous avez accidentellement fait quelque chose comme npm link generator-webapp après l'avoir modifiée, vous pouvez le réparer en clonant le bon générateur et en liant that.

git clone https://github.com/yeoman/generator-webapp.git;
# for fixing generator-webapp, replace with your required repository
cd generator-webapp;
npm link;
2
Code Whisperer

"npm install" remplace toutes les dépendances de vos node_modules installés avec "npm link" par les versions de npmjs (spécifiées dans votre package.json)

0
Eugenio