web-dev-qa-db-fra.com

Comment effacer le cache du paquet NuGet en utilisant la ligne de commande?

Je peux effacer le cache de paquets NuGet de mon ordinateur dev à l'aide du bouton Outils/Options/Gestionnaire de paquets NuGet/Général: bouton [Effacer le cache de paquet].

Je voudrais faire ceci en ligne de commande. Malheureusement, je ne trouve pas de commutateur de ligne de commande associé pour nuget.exe.

Ai-je oublié quelque chose?

358
g.pickardou

Tout d’abord, téléchargez l’outil en ligne de commande NuGet à partir de ici .

Ensuite, ouvrez une commande Invite et cd dans le répertoire dans lequel nuget.exe a été téléchargé.

Vous pouvez lister les caches locaux avec cette commande:

nuget locals all -list

Vous pouvez effacer toutes les caches avec cette commande:

nuget locals all -clear

Référence: https://docs.nuget.org/consume/command-line-reference

567
rm8x

Dans Visual Studio 2017, accédez à TOOLS -> Gestionnaire de packages Nuget -> Paramètres du gestionnaire de packages. Vous trouverez peut-être un bouton "Effacer tout le (s) cache (s) de NuGet" enter image description here

Si vous utilisez .NET Core, vous pouvez effacer le cache avec cette commande, qui devrait fonctionner à partir de .NET Core Tools 1.0:

dotnet nuget locals all --clear

197
Ricky

L'utilitaire nuget.exe ne possède pas cette fonctionnalité, mais vu que le cache NuGet est simplement un dossier sur votre ordinateur, vous pouvez supprimer les fichiers manuellement. Ajoutez simplement ceci à votre fichier batch.

del %LOCALAPPDATA%\NuGet\Cache\*.nupkg /q
84
Kiliman

Pour moi, je devais aller ici:

%userprofile%\.nuget\packages
24
Bowofola

Cela ajoute à la réponse de rmoore.

Téléchargez et installez l'outil de ligne de commande NuGet.

Liste de tous nos habitants.

$ nuget locals all -list
http-cache: C:\Users\MyUser\AppData\Local\NuGet\v3-cache
packages-cache: C:\Users\MyUser\AppData\Local\NuGet\Cache
global-packages: C:\Users\MyUser\.nuget\packages\

Nous pouvons maintenant les supprimer manuellement ou comme suggéré par Rmoore, utilisez nuget locals all -clear.

17
Shaun Luttin

Effacer le cache 3.x + (utilisez l'une ou l'autre commande)

dotnet nuget locals http-cache --clear
nuget locals http-cache -clear

Effacez le cache 2.x (NuGet CLI 3.5 et versions antérieures uniquement)

nuget locals packages-cache -clear

Efface le dossier des packages globaux (utilisez l'une ou l'autre des commandes)

dotnet nuget locals global-packages --clear
nuget locals global-packages -clear

Effacer le cache temporaire (utilisez l'une ou l'autre commande)

dotnet nuget locals temp --clear
nuget locals temp -clear

Efface le cache des plugins (utilisez l'une ou l'autre commande)

dotnet nuget locals plugins-cache --clear
nuget locals plugins-cache -clear

Effacer tous les caches (utilisez l'une ou l'autre commande)

dotnet nuget locals all --clear
nuget locals all -clear

Les packages utilisés par les projets actuellement ouverts dans Visual Studio ne sont pas effacés du dossier global-packages.

Pour plus de détails

12
ElasticCode

Notez que dnx a un cache différent pour les résultats http du fil

Microsoft .NET Development Utility Clr-x86-1.0.0-rc1-16231
   CACHE https://www.nuget.org/api/v2/
   CACHE http://192.168.148.21/api/odata/

Que vous pouvez effacer avec

dnu clear-http-cache

Maintenant, nous devons juste savoir quelle sera la commande sur le nouvel outil dotnet cli

pdate ... et le voici:

dotnet restore --no-cache
10
KCD

Si vous devez effacer le cache Nuget pour votre serveur/agent de build, vous pouvez trouver le cache pour les packages Nuget ici:

%windir%/ServiceProfiles/[account under build service runs]\AppData\Local\NuGet\Cache

Exemple: C:\Windows\ServiceProfiles\NetworkService\AppData\Local\NuGet\Cache

5
khablander

dotnet nuget locals all --clear

Si vous utilisez .NET Core.

5
Jim Aho

Vous pouvez utiliser PowerShell pour (comme moi).

Par exemple:

rm $env:LOCALAPPDATA\NuGet\Cache\*.nupkg

ou mode "silencieux" (sans message d'erreur):

rm $env:LOCALAPPDATA\NuGet\Cache\*.nupkg 2> $null
3
honzakuzel1989