In Visual Studio 2015 kann kein Paket installiert werden

183

Ich habe jedes Paket ausprobiert, das ich möglicherweise finden konnte, und keines davon wird in meinem Projekt installiert. Ich habe jedes Update installiert, das in der Liste der verfügbaren Erweiterungen und Updates aufgeführt ist. Wenn ich zum Beispiel versuche, SendGrid zu installieren, ist dies das Ergebnis (wie das Ergebnis bei allen anderen Paketen):

Attempting to gather dependencies information for package 'Sendgrid.6.1.0' with respect to project 'UI\MyApplication.MVC', targeting '.NETFramework,Version=v4.5.2'
Attempting to resolve dependencies for package 'Sendgrid.6.1.0' with DependencyBehavior 'Lowest'
Resolving actions to install package 'Sendgrid.6.1.0'
Resolved actions to install package 'Sendgrid.6.1.0'
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
Adding package 'SendGrid.SmtpApi.1.3.1' to folder 'C:\Users\Keith\Source\Workspaces\MyApplication\MyApplication.MVC\packages'
Install failed. Rolling back...

Ich kann nicht der einzige auf der Welt sein, der Probleme mit Visual Studio 2015 und dem neuen und "verbesserten" NuGet Package Manager hat.

UPDATE:
Nun, muss etwas Seltsames in meiner Lösung sein, da ich ein neues Projekt aus der VS2015-Vorlage (Web) erstellt habe und die Pakete einwandfrei installiert werden. Wenn ich das Problem herausfinde, werde ich die Lösung veröffentlichen, falls andere auf dasselbe Problem stoßen.

UPDATE 2:
Ok, das ist nicht unsere Lösung. Wir haben erneut eine neue Lösung von Grund auf neu erstellt (dies hat viel Entwicklungszeit verschwendet, könnte ich hinzufügen), einige Pakete hinzugefügt (Identity, EF, SendGrid) und nach dem Einchecken der Lösung in VSO führt ein anderer Entwickler eine neue Erstellung durch des Zweigs und Build-Fehler auftreten. Wenn ich für ein einzelnes Projekt zu den NuGet-Paketen gehe, verhält es sich so, als ob keines der von mir hinzugefügten Pakete verfügbar wäre. Hat das noch jemand erlebt?

im Uhrzeigersinnq
quelle
1
Verwenden Sie VS2013, um Pakete hinzuzufügen. VS2015 ist sehr problematisch. Öffnen Sie es dann einfach in VS2015 und verwenden Sie es weiter
Rob Sedgwick,

Antworten:

124

tl; dr - Löschen Sie Folgendes:

%AppData%/Nuget/Nuget.config

Warnung: Wenn Sie benutzerdefinierte NuGet-Quellen hatten, werden diese entfernt und Sie müssen sie erneut hinzufügen.


Längere Version:

Möglicherweise haben Sie Ihre NuGet-Konfiguration beschädigt. Ach nein :(

Nuget.config ist eine Datei, mit der Sie alle Orte verfolgen, von denen NuGet abruft, und andere Dinge konfigurieren können. Höchstwahrscheinlich ist diese XML-Datei irgendwie kaputt gegangen.

  • Gehen Sie zu diesem Pfad: C:\Users\{{username}}\AppData\Roaming\
  • Löschen Nuget.config
  • Starten Sie VS für eine gute Maßnahme neu

Als Referenz: In den guten Tagen des Jahres 2017 sollte Ihre Datei ungefähr so ​​aussehen

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <activePackageSource>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </activePackageSource>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <!-- Others -->
  </packageSources>
  <packageSourceCredentials>
    <!-- secret stuff -->
  </packageSourceCredentials>
</configuration>
Stachu
quelle
Danke, das war eine nette Lösung
Nic
Das funktioniert auch bei mir, danke Statue, du hast mir Zeit gespart.
Rameshwar Vyevhare
1
Erstaunlicher Zufall. Dieser Beitrag von vor einem Jahr wird direkt vor meinen Augen bearbeitet, wenn ich die Antwort brauche. Vielen Dank!
Jason sprach
1
Es tut mir leid, das zu stoßen, aber meins musste etwas Besonderes sein und hieß "NuGet.Config", was für mich sehr spezifisch für NTFS war!
TGP1994
2
(Es stellte sich heraus, dass ich die Konfiguration überhaupt nicht löschen musste. Ein Neustart von Visual Studio war erforderlich.)
TGP1994
415

Durch Schließen und erneutes Öffnen von VS2015 wird das Problem behoben.

In einigen Fällen scheint es einfach zu funktionieren, das betroffene Projekt einfach neu zu laden.

Lars
quelle
3
Dies funktionierte auch für mich, nachdem ich VS geschlossen, den Ordner 'packages' für die Lösung gelöscht und neu gestartet hatte.
Wislon
6
Dies funktionierte für mich, obwohl ich alle Instanzen von VS schließen musste - es reichte nicht aus, nur die betroffene zu schließen.
Rory McCrossan
4
Es scheint so einfach ... und doch +111 Stimmen! Hat auch für mich gearbeitet!
Anthony Nichols
22
Warum, Microsoft?!?! Warum muss dies die beste Antwort sein (und die, die für mich funktioniert hat)?
Matt Ruwe
2
Ich bin mit der Antwort nicht zufrieden, aber es funktioniert, wir brauchen das "Warum"
Zinov
32

Ich habe in meinem Fall eine Lösung dafür gefunden. Versuchen Sie, den NuGet Package Manager zu aktualisieren.

Um dies zu tun:

  1. Gehen Sie in VS zu Extras -> Erweiterungen und Updates
  2. Öffnen Sie links die Menüoption Updates und wählen Sie dann Visual Studio Gallery .
  3. Wenn es ein Update für Nuget Package Installer gibt, sollte es in der Liste rechts angezeigt werden. Klicken Sie auf Aktualisieren
  4. Starten Sie Visual Studio neu

Dadurch konnte ich problemlos wieder Pakete installieren.

Hoffe das hilft!

Alejo03
quelle
1
Ich folgte dem, aber für Nuget standen keine Updates aus. Es gab eine für "Web Tools" und dies hat den Fehler "Nuget-Konfiguration ist ungültig" für mich behoben.
RyanJMcGowan
1
Es war wahrscheinlich nicht die Tatsache, dass Sie "Web Tools" aktualisiert haben, sondern die Tatsache, dass Sie für die Installation von Erweiterungsupdates Visual Studio neu starten müssen. Der Neustart hat bei mir funktioniert.
Joe the Coder
Arbeitete auch für mich
Aaron
In meinem Fall war kein Update verfügbar, aber ich habe die neueste Version von dotnet.myget.org/F/nuget-vsix/vsix heruntergeladen und es hat funktioniert.
DavidC
20

In meinem Fall Update Microsoft.CodeDom.Providers.DotNetCompilerPlatformund Microsoft.Net.Compilers verursachte das Problem.

Löschen bin, objund packagesOrdner und Visual Studio 2015 neu starten gelöst , das Problem für mich.

Nikolay Kostov
quelle
1
Andere Lösungen haben nicht funktioniert, aber diese hat funktioniert. Das Löschen von 'Paketen' war der Schlüssel für mich
Gordon Slysz
1
Ich weiß nicht, warum das Löschen der Pakete funktionieren könnte, aber es funktioniert! Ich hatte jedoch nichts aktualisiert, sondern nur von Visual Studio 2010 auf 2015 und .NET 4.0 auf 4.5 migriert.
Beschützer ein
Wo finde ich den Ordner "Pakete"? Ich habe nur bin und obj.
Denny
8

Sie müssen alle NuGet-Caches löschen. Dazu müssen Sie zu Optionen gehen und wie folgt darauf klicken:

Geben Sie hier die Bildbeschreibung ein

Shahrooz Ansari
quelle
Jesus, omg, du hast mein Leben gerettet, ich wurde verrückt ... Ich bekam immer den Fehler "Installation fehlgeschlagen. Rollback zurück ...". Beim Löschen der NuGet-Konfigurationsdatei wurde die akzeptierte Antwort mitgeteilt und auch versucht, VS und Computer neu zu starten. Meine Nuget-Feeds wurden gelöscht und erneut konfiguriert. Nichts, aber dann wurde dies behoben. Vielen Dank Mann!
TiagoM
7

Im Allgemeinen wurden durch Schließen und erneutes Öffnen von VS 2015 die meisten Probleme behoben, auf die ich gestoßen bin . Einmal musste ich eine Reparatur auf einem meiner Computer durchführen.

Allerdings war ich dagegen tue Closing and re-opening VS2015 resolved the issue for me ich dache , dass es stattdessen direkt auf dem Projekt klicken würde und Unload Projekt dann mit dem rechten Maustaste und neu lädt Projekt DANN verwalten Nuget gearbeitet!

Tom Stickel
quelle
4

Nur um allen zu helfen, die auf dieser Seite gelandet sind, nachdem sie VS2015 auf Update 2 aktualisiert und versucht haben, Pakete auf einer Website zu verwalten, wird der Fehler "NuGet-Konfigurationsdatei ist ungültig" angezeigt. Dies ist ein bekanntes und anerkanntes Problem:

https://connect.microsoft.com/VisualStudio/feedback/details/2698136/nuget-configuration-is-invalid-manage-nuget-packages-for-solution-disabled

Ich habe meine wieder zum Laufen gebracht, indem ich den Paketmanager 3.4.4 (Beta) von http://dist.nuget.org/index.html installiert habe

Sie geben auch an, dass Update 3 für Visual Studio auch einen Fix enthält

MarkMiddlemist
quelle
Vielen Dank dafür! :)
Ramanpreet Singh
3

Ich vermute, dass Nuget Package Manager VSO durcheinander bringt. Ich erstelle ein neues Projekt, füge Pakete hinzu, checke TFS ein. Dann gehe ich nach Hause, "Neueste Version abrufen" und starte und scheitere, weil Nuget Package Manager meine Pakete nicht wiederherstellt. Lösung: auf meinem Heimcomputer

  1. Öffnen Sie den Nuget Package Manager und deinstallieren Sie alle installierten Pakete
  2. Öffnen Sie den Ordner "Referenzen" und klicken Sie mit der rechten Maustaste auf "Löschen" für alle von Ihnen installierten Pakete
  3. Installieren Sie sie erneut über Nuget Package Manager
  4. Check-In
Tuan Tran
quelle
Ich habe versucht, Pakete aus einem neuen Projekt hinzuzufügen / zu aktualisieren, und habe das gleiche fehlgeschlagene Ergebnis festgestellt. Ich habe ein Downgrade auf VS2013 durchgeführt, bis der Paketmanager in VS2015 aktualisiert wurde
im Uhrzeigersinn
3

Ich konnte dieses Problem beheben, indem ich Nuget Package Manager über Tools -> Erweiterungen und Updates neu installierte

mike.bukosky
quelle
3

Ich hatte dieses Problem mit Visual Studio 2017: Es stellt sich heraus, dass es zwei Klassenbibliotheksprojekte gibt - eines für .Net und das andere für C #. Ich habe das für .Net erstellt und als ich versuchte, ein bestimmtes Paket zu installieren (in meinem Fall Nunit), wurde die Fehlermeldung angezeigt.

Das Problem wurde behoben, indem das Projekt als C # -Klassenbibliothek neu erstellt wurde

Belgi
quelle
1

In meinem Fall wurde dieses Problem verursacht durch einen Konflikt in meinem Ziel Rahmen Einstellung unter jedem Projekt. Als ich ein neues Projekt erstellte, war VS 2015 standardmäßig 4.5.2, jedoch wurden alle meine Nuget-Pakete für 4.6 erstellt.

Aus irgendeinem Grund hat mir VS 2015 diese Fehler nicht angezeigt. Ich habe sie erst gesehen, als ich ein neues leeres Projekt erstellt und versucht habe, mein Nuget-Projekt dort hinzuzufügen. Dieses Verhalten wurde möglicherweise verschlimmert, weil ich das Projekt während der Ersteinrichtung einige Male umbenannt hatte.

Ich habe das Problem gelöst durch

  • Ändern des Ziel-Frameworks für meine Projekte auf 4.6
  • VS 2015 geschlossen
  • Ordner "packages", "obj" und "bin" gelöscht
  • Öffnen Sie die Lösung erneut und versuchen Sie erneut, das Nuget-Paket hinzuzufügen.
raterus
quelle
1

Ich verwende Visual Studio 2015 Update 3 und konnte diesen Fehler reproduzieren (obwohl Update 3 angeblich einen Fix enthält).

Wie oben angedeutet, eine zuverlässige Lösung ist die folgende ... 1) Beenden Sie Visual Studio, 2) Löschen Sie die tun Pakete Ordner, 3) Restart VS.

Aber ... wenn Sie VS aus irgendeinem Grund nicht sofort beenden möchten, konnte ich weiterhin Pakete zu allen Projekten hinzufügen / entfernen, indem ich die Option " NuGet-Pakete für Lösung verwalten " anstelle des einzelnen Projekts mit dem Problem auswählte .

Kontrollkasten
quelle
Wo ist der Paketordner, über den alle reden?
ShrimpCrackers
@ ShrimpCrackers - am selben Speicherort wie die Lösungsdatei (.sln)
Controlbox
1

Das Reparieren von Visual Studio 2015 scheint dieses Problem für mich behoben zu haben. Siehe dieses Problem für NuGet in GitHub.

Hans Vonn
quelle
1

Ein einfacher Neustart von Visual Studio funktioniert für mich. Versuchen Sie, Visual Studio neu zu starten.

Chidi-Nwaneto
quelle
0

Ich hatte dieses Problem, das anscheinend durch einen Fehler im packagesOrdner auf Lösungsebene verursacht wurde . Ich habe den Inhalt des Ordners gelöscht und nugetalle Pakete erneut installieren lassen .

Ich könnte dann wieder neue Pakete installieren.

andynormancx
quelle
0

Öffnen Sie den Paketordner. Überprüfen Sie, ob Dateien mit der Erweiterung .deleteme vorhanden sind, z. B. Newtonsoft.Json.9.0.1.deleteme. Löschen Sie alle Pakete mit einer .deleteme-Datei manuell. Löschen Sie die .deleteme-Dateien. Schließen und öffnen Sie den Nuget Explorer.

Orhan
quelle
0

Ändern Sie die "Paketquelle" in Nuget in All

Details: Keiner der oben genannten Punkte hat in meinem Fall geholfen. Mein Problem war, dass ich mich auf nur einen privaten Feed beschränkte. Nachdem ich die "Paketquelle" in geändert hatte All, war mein Problem gelöst. Ich glaube, der Kern der Sache ist, dass mein privates Paket von anderen Paketen von nuget.org abhängig ist.

Ich hoffe das kann jemandem helfen

Rotem Varon
quelle
0

In meinem Fall hat nichts davon geholfen. Die Hauptursache für das Problem in meinem Fall war, dass ich das Paket zuvor deinstalliert und die Änderung der Quellcodeverwaltung (in meinem Fall TFS) nicht eingecheckt habe. Nach dem Einchecken der Änderung (= Löschen der Datei im Paketordner) konnte ich das Paket neu installieren.

Heinz Kessler
quelle
0

In meinem Fall befand sich im Verzeichnis soultion eine leere Datei packages.config. Nach dem Löschen war die Aktualisierung erfolgreich

Timm
quelle