250 votes

Comment désinstaller un package installé à l'aide de npm link ?

Lors de l'installation d'un package node en utilisant sudo npm link dans le répertoire du package, comment puis-je désinstaller le package une fois que j'ai terminé le développement ?

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

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

264voto

nwinkler Points 5889

Le package peut être désinstallé en utilisant la même commande désinstaller ou rm qui peut être utilisée pour supprimer des packages installés. La seule chose à garder à l'esprit est que le lien doit être désinstallé globalement - le drapeau --global doit être fourni.

Pour désinstaller le package foo lié de manière globale, la commande suivante peut être utilisée (en utilisant sudo si nécessaire, en fonction de votre configuration et autorisations)

sudo npm rm --global foo

Cela désinstallera le package.

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

npm ls --global foo

173voto

Blair Anderson Points 587

Vous pouvez utiliser désymlinker pour supprimer le lien symbolique.

Par exemple :

cd ~/projets/node-redis 
npm link                 
cd ~/projets/node-bloggy
npm link redis             # liens vers votre redis local

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

32voto

KhaledMohamedP Points 81

Npm lien douleur :

-Nom du module gulp-task

-Nom du projet project-x


Vous voulez lier gulp-task :

1: Allez dans le répertoire gulp-task puis exécutez npm link cela créera un lien symbolique vers vos modules globaux

2: Allez dans votre projet project-x puis exécutez npm install assurez-vous 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: Désistement via npm :

1: Allez dans votre projet et exécutez npm unlink gulp-task cela supprimera le module installé lié

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

3: célébrez


Et si cela ne fonctionne pas, vérifiez en localisant votre module installé globalement. Le mien est situé à ls -la /usr/local/lib/node_modules/ si vous utilisez nvm le chemin sera différent


Option 2: Supprimez le lien symbolique comme un guru linux normal

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

2: supprimer le lien symbolique est aussi simple qu'utiliser la commande rm

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

rm gulp-task/ est incorrect

rm gulp-task

5voto

JulianSoto Points 95

désinstaller npm --global my-package

4voto

Cela a fonctionné pour moi :

  1. vérifiez la liste des packages globaux npm :

    npm ls --global

  2. désinstallez votre package :

    npm uninstall --global my-package

  3. allez dans votre bac à sable et désactivez le package lié :

    npm unlink my-package

  4. naviguez jusqu'au répertoire de votre bac à sable et réinstallez les packages :

    npm install

  5. redémarrez votre serveur de bac à sable

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