2016-01-11 7 views
8

Ich versuche, ein Projekt mit NuGet (in VS2015) zu meinem Projekt hinzuzufügen. Wenn ich die Schaltfläche „Installieren“ klicken Ich sehePakete über Nuget installieren - "Central Directory korrupt"

Herunterladen fehlende Pakete ...

am oberen Rand des Bildschirms mit einem Fortschrittsbalken.

Nach einem kurzen Moment wird die Nachricht mit Fassung -

ist ein Fehler aufgetreten bei dem Versuch, Pakete wiederherzustellen: Zentrales Verzeichnis beschädigt.

mit einer Schaltfläche "Wiederherstellen" am Ende, die den gleichen Prozess macht.

Wer hat eine Idee, wie das zu beheben?

Antwort

16

bearbeiten 07/2017

Eine weitaus einfachere Methode um dieses Problem zu lösen, ist zu einfach Visual Studio zu erhalten, um das Paket erneut herunterladen -

  1. in Visual Studio geöffnet Tools -> Options.
  2. Wählen Sie NuGet Package Manager. Stellen Sie sicher, dass sowohl Allow NuGet to download missing packages als auch Automatically check for missing packages during build in Visual Studio beide markiert sind
  3. Klicken Sie auf OK.
  4. In einem Datei-Explorer-Fenster navigieren Sie in den Ordner "Pakete" des Projekts.
  5. Drei Optionen -
    • Abbildung aus dem Paket fehlerhaft ist, wie in der ursprünglichen Antwort und löschen ihre Ordner beschrieben.
    • Verschieben Sie alle Pakete an einen temporären Speicherort, wenn Sie nicht sicher sind, ob sie alle noch in NuGet verfügbar sind (Sie müssen die fehlenden anschließend wieder kopieren).
    • Löschen Sie alle Paketordner, wenn Sie sicher sind Alle Ihre Pakete sind noch in NuGet verfügbar.
  6. Zurück in Visual Studio bauen Sie Ihre Lösung.
  7. Visual Studio sollte alle Ihre Pakete herunterladen.

Original-Antwort

Ok, das Problem war hier, dass die .nupkg Datei für ein Paket (in Projektstamm/packges/Paketordner gefunden) hatte einige beschädigt zeigen und hatte eine Größe von Null.

habe ich herausgefunden, welches Paket korrupt war, nachdem ein zufälliges Paket mit dem Paket-Manager-Konsole manuell zu installieren versucht -

Install-Package *package name* 

, die mir gesagt, dass es ein Problem mit derzeit installierten Pakets war -

Install-Paket: Ein Fehler ist aufgetreten, während Paket-Metadaten für 'Paketnamen' Abrufen ....

Von th ehe ich war in der Lage, es zu beheben, indem Sie folgendermaßen vorgehen -

  1. Navigieren Sie zu dem zu der NuGet site
  2. Suche für das Projekt ganz oben auf der Seite mit Hilfe der Suchfunktion
  3. Laden Sie die .nupkg Datei der Link "Download" auf der linken Seite (Überprüfung der Versionsnummer).
  4. Kopieren Sie die heruntergeladene Datei über die alte Datei im Ordner "packages".
+0

Ich hatte gerade genau dieses Problem. Ihre Lösung hat funktioniert, danke! Irgendeine Idee, was es verursacht? – Zero3

+0

@ Zero3 keine Ahnung Ich habe Angst. Nicht lange bevor ich das Problem fand, denke ich, dass ich Probleme mit meinem Git-Repository hatte, in dem das Projekt war, aber ich denke nicht, dass es verwandt war. –

+0

Ich auch. Hatte einige seltsame Probleme beim Wechseln von Zweigen in Git durch Visual Studio 2015 und musste es mit TortoiseGit erzwingen, indem alle lokalen Änderungen rückgängig gemacht wurden. Könnte verwandt sein ... – Zero3

3

alle nuget Pakete unter \ Pakete entfernen \ (i mehrere beschädigte Pakete hatte)

Gehen Sie zu Ihrer Lösung in Visual Studio und klicken Sie auf "Wiederherstellen Nuget Packages"

Erstellen Sie Ihre Lösung

Sollte behoben sein :)

+0

Das hat bei mir funktioniert. –

Verwandte Themen