web-dev-qa-db-de.com

Ein NuGet-Paket kann nicht wiederhergestellt/entfernt/aktualisiert werden, da die angegebene Version nicht mehr verfügbar ist

Ich versuche dem SignalR Sample eine Testfahrt zu geben, aber es scheint, dass es sich auf eine alte Version von SignalR bezieht, die nicht mehr verfügbar ist. Das eigentliche Problem ist, dass NuGet das nicht verfügbare Paket nicht entfernen kann, ohne es vorher wiederherzustellen !!!

PM> Install-Package Microsoft.AspNet.SignalR
Install-Package : Some NuGet packages are missing from the solution. The packages need to be restored in order to build the dependency graph. Restore the packages before performing any operations.
At line:1 char:1
+ Install-Package Microsoft.AspNet.SignalR
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Install-Package], InvalidOperationException
    + FullyQualifiedErrorId : NuGetMissingPackages,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand

Dann gibt es eine Restore-Taste auf dem Package Manager Console, die durch Drücken auf den folgenden Fehler angezeigt wird:

An error occurred while trying to restore packages: Unable to find version '2.1.0-pre-131116-b279' of package 'Microsoft.AspNet.SignalR.Client'

Wie kann ich eine neuere Version eines adressierten Pakets installieren, wenn die aktuelle Version nicht gefunden wird?

Ich benutze: 

Microsoft Visual Studio Community 2015
Version 14.0.24720.00 Update 1
Microsoft .NET Framework
Version 4.6.01038
NuGet Package Manager   3.3.0

[UPDATE]

Wenn ich versuche, das problematische Paket zu deinstallieren:

PM> Uninstall-Package -Id Microsfot.AspNet.SignalR -RemoveDependencies -Force
Uninstall-Package : Some NuGet packages are missing from the solution. The packages need to be restored in order to build the dependency graph. Restore the packages before performing any operations.
At line:1 char:1
+ Uninstall-Package -Id Microsfot.AspNet.SignalR -RemoveDependencies -F ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Uninstall-Package], InvalidOperationException
    + FullyQualifiedErrorId : NuGetMissingPackages,NuGet.PackageManagement.PowerShellCmdlets.UninstallPackageCommand
26
Mehran

Sie können die Abhängigkeit manuell entfernen, indem Sie:

  1. Schließen Sie Visual Studio (keine harte Anforderung, aber hilfreich)
  2. Entfernen Sie im Texteditor die Abhängigkeit von packages.config
  3. Entfernen Sie das Paket aus dem Paket/Verzeichnis
  4. Entfernen Sie im Texteditor alle Verweise auf das Paket aus der .csproj-Datei
  5. Starten Sie Visual Studio
  6. Installieren Sie das Paket erneut über NuGet
26
Joe Hawkins

Es gibt eine einfachere Lösung, wenn Sie die derzeit im Feed vorhandenen Versionen kennen. Diese Lösung kann jedes Paket in jedem Projekt reparieren.

  • Öffnen Sie die Datei packages.config (wenn Sie mehr als ein Projekt haben, tun Sie dies für jede Datei packages.config).
  • Aktualisieren Sie die Versionen auf die richtigen (d. H. Das Versionsattribut ändern).
  • Geben Sie in der Package Manager Console Update-Package -Reinstall ein.

Ich hoffe es hilft

8
ferarias

Was für mich funktioniert, ist:

1. Wechseln Sie zur Datei packages.config.

2. Suchen Sie nach "... id =" Microsoft.AspNet.SignalR.Client "version =" "targetFramework =" net45 "..." 

3. Wechseln Sie zu einer vorhandenen Version, sagen Sie "2.2.0". 

4. Speichern Sie.

5. Gehen Sie zu Nuget und aktualisieren Sie auf den neuesten Stand.

1
Yh Zheng

In einem Kommentar von @ferarias erwähnt - wenn Sie nuget.exe verwenden, aktualisieren Sie ihn oder laden Sie die neueste Version herunter.

Für mich war ein Upgrade von v4.4.1 auf v4.6.2 ausreichend, um den Some NuGet packages are missing-Fehler zu beheben.

1
Dunc