dotnet-restore

___ qstnhdr ___ Die angegebene Abhängigkeit war X, endete aber mit Y ___ qstntxt ___

Ich habe die %code% einer Klassenbibliothek aktualisiert, um %code% und %code% zu erreichen.

Mit dieser Änderung:

%Vor%

Ich veröffentliche eine Bibliothek und muss wirklich auf %code% / %code% ausrichten.

Wie kann ich feststellen, warum stattdessen eine höhere Version verwendet wird?

    
___ answer42412762 ___

Wenn Sie nicht mit NuGet, aber in meinem Fall mit Ihren eigenen Projekten arbeiten, kann dieser Fehler auch auftreten.

Als erstes sollten Sie sicherstellen, dass Sie die korrekte Version in %code% haben.

Dann müssen Sie möglicherweise jedes project.json, das auf dieses Projekt verweist, aktualisieren, da VS2015 nicht immer korrekt aktualisiert wird:

  1. Öffnen Sie die Datei project.json und schneiden Sie die Zeile mit der Warnung ab
  2. Speichern Sie die Datei und warten Sie, bis die Meldung 'Pakete wiederherstellen ...' verschwindet
  3. Fügen Sie die Zeile wieder in
  4. ein
  5. Speichern Sie die Datei erneut

Eine andere Möglichkeit zum Erzwingen einer Aktualisierung besteht darin, %code% auf der Lösungs- oder Projektebene auszuführen.

    
___ tag123net ___ Das .NET-Framework ist ein Software-Framework, das hauptsächlich für das Microsoft Windows-Betriebssystem entwickelt wurde. Es enthält eine Implementierung der Basisklassenbibliothek, Common Language Runtime (allgemein als CLR bezeichnet), Common Type System (allgemein als CTS bezeichnet) und Dynamic Language Runtime. Es unterstützt viele Programmiersprachen, einschließlich C #, VB.NET, F # und C ++ / CLI. NICHT für Fragen zu .NET Core verwenden. ___ tag123netcore ___ .NET Core ist eine Open-Source-modulare Implementierung von .NET Framework. Es kann in einer Vielzahl von Anwendungen und Branchen verwendet werden, von Servern und Rechenzentren bis hin zu Apps und Geräten. .NET Core wird von Microsoft unter Windows, Linux und macOS unterstützt. ___ answer43589796 ___

Ich hatte dieses Problem, wenn ein gemeinsames Bibliotheksprojekt in mehr als einer Lösung war.

Der Verzeichnispfad des Bibliotheksprojekts wurde geändert und die Datei global.json wurde in einer einzigen Lösung aktualisiert.

In der anderen wurde die SLN-Datei für den neuen Speicherort des Projekts aktualisiert. Allerdings die global.json nicht. Da das Projekt in ein höheres Verzeichnis verschoben wurde, verweist die alte global.json-Datei auf einen bestimmten Speicherort.

    
___ answer40015233 ___

Ich habe dies auf einem NuGet Problem verfolgt und @emgarten hat darauf hingewiesen, dass das %code% -Paket nur habe eine Version 1.6.0, aber diese Version 1.6.0 enthält Assemblies für %code% .

In diesem Fall existiert die Version 1.3, die ich angefordert habe, nirgendwo und die Warnung ist eine Benachrichtigung, dass sie stattdessen eine höhere Version verwendet.

Die Diagnose könnte jedoch noch informativer sein. Sie können über das Problem abstimmen , wenn es Sie ebenfalls stört und Sie möchten, dass es klarer wird.

    
___ tag123dotetrestore ___ hilf uns dieses Wiki zu bearbeiten ___ answer49152980 ___

Für mich funktionierte nur das Löschen der Sperrdatei ( %code% ). Nach dem Löschen dieser Datei hat Nuget alle Pakete automatisch wiederhergestellt und das Problem ist verschwunden.

Haftungsausschluss

Obwohl es für mich funktionierte, bin ich mir nicht sicher, ob dies ein tiefgreifender Weg ist, Dinge zu tun, die für alle funktionieren. Bitte beachten Sie also, was Sie tun, bevor Sie diese Datei löschen.

    
___ tag123projectjson ___ project.json ist die Projektdefinitionsdatei, die von .NET Core in Version 1.0 und früher verwendet wird. ___
4
Antworten

Die angegebene Abhängigkeit war X, endete aber mit Y

Ich habe die project.json einer Klassenbibliothek aktualisiert, um netstandard1.3 und net64 zu erreichen. Mit dieser Änderung: %Vor% Ich veröffentliche eine Bibliothek und muss wirklich auf netstandard1.3 / net46 ausrichten...
12.10.2016, 13:28