Comment trouver les packages NuGet inutilisés dans une solution?
J'ai un certain nombre de solutions où il y a beaucoup de packages installés, et un grand nombre sont signalés comme ayant des mises à jour.
Cependant, je crains qu'il y ait des changements cassants, donc je veux d'abord nettoyer en supprimant tous les paquets inutilisés.
visual-studio
nuget
SteveC
la source
la source
Réponses:
ReSharper 2016.1 a une fonctionnalité pour supprimer NuGet inutilisé.
Il peut être exécuté sur une solution et sur chaque projet d'une solution et il effectue les opérations suivantes:
Malheureusement, cela ne fonctionne pas pour les
project.json
projets ( RSRP-454515 ) et les projets de base ASP.NET ( RSRP-459076 )la source
Vous pouvez utiliser l'extension Visual Studio ResolveUR - Résoudre les références inutilisées
Ce n'est pas une tâche facile, donc je suggère de faire une sauvegarde et / ou de valider avant juste pour revenir en arrière si quelque chose ne va pas.
la source
The tool is not tested to work with DotNet Web projects(Asp.Net, MVC), Windows CE, Silverlight project types. Use it at your own risk.
Vous pouvez accomplir cela en utilisant Resharper 2019.1.1.
Faites un clic droit sur le projet> Refactoriser> Supprimer les références inutilisées.
Si votre projet est petit, vous pouvez également projeter> Optimiser les références utilisées. . .
Une fenêtre apparaîtra. Sélectionnez toutes les références et supprimez-les toutes. Revenez ensuite en arrière et ajoutez à nouveau ceux qui vous donnent une erreur de compilation.
la source
C'est du travail manuel, mais ça marche.
Utilisez ReSharper ou un outil d'analyse de code similaire pour identifier les références inutilisées dans vos projets et désinstaller le nuget dans les projets correspondants.
Parfois, les nugets désinstallés persistent dans les listes de packages installés et de mises à jour de la boîte de dialogue Gérer les packages NuGet. Fermez Visual Studio, supprimez le
packages
dossier, puis rouvrez la solution et restaurez vos nugets.la source
Je ne pense pas qu'il existe un moyen par défaut de le découvrir. La raison principale étant la variété de choses que ces packages peuvent faire, du référencement d'un assembly à l'injection de code source dans votre projet. Vous voudrez peut-être vérifier les extensions Nuget.Extensions . Le fil suivant sur codeplex parle d'un rapport d'audit des packages nuget.
http://nuget.codeplex.com/discussions/429694(NuGet a été déplacé de Codeplex vers GitHub. Archive du lien ci-dessus :) https://web.archive.org/web/20171212202557/http://nuget.codeplex.com:80/discussions/429694
la source