Laden...

[gelöst] Azure DevOps: Project build online hosted on VS2017 - NuGet Restore schlägt fehl.

Erstellt von dr4g0n76 vor 5 Jahren Letzter Beitrag vor 5 Jahren 906 Views
dr4g0n76 Themenstarter:in
2.921 Beiträge seit 2005
vor 5 Jahren
[gelöst] Azure DevOps: Project build online hosted on VS2017 - NuGet Restore schlägt fehl.

Hallo zusammen. 😃

Wir haben eine Solution in der Firma, das einige Solution Folder, .NET Core Projekte und mit .NET Standard und so weiter enthält.

Mit Devenv lokal und mit msbuild.exe /t:restore plus weitere Parameter buildet die Solution auch.

Nur, wenn ich das Ganze jetzt auf Azure Devops probiere, dann können die NuGet-Packages nicht restored werden.

Obwohl die Pipeline einen NuGet-Installer und dann ein NuGet-Restore enthält.

Hat jemand schon ähnliche Erfahrungen gemacht?

Eigentlich suche ich gerade nur den Schalter, was ich bei Azure Devops machen muss, damit quasi ein NuGet-Restore wie mit obigem msbuild.exe Command passiert.

Aber der NuGet Restore task scheint es nicht zu machen.... Der schlägt eben immer fehl.
Das gilt es zu lösen.

Wenn ich die Lösung selbst finden sollte, werde ich es hier posten.

Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.

16.807 Beiträge seit 2008
vor 5 Jahren

In den Docs ist dazu ein Hint: lade dir via 'nuget use' Task zuerst die letzte recommended nuget version runter, bevor der restore Task läuft.
Die Versionen siehst du auf nuget.org/downloads

Oder meinst du das mit 'install'?

Ansonsten Mal den Fehler posten...

dr4g0n76 Themenstarter:in
2.921 Beiträge seit 2005
vor 5 Jahren
[gelöst]

Das wäre dann in diesem Fall ziemlich viel für den einzelnen zu lesen.
Was quasi aufgetreten ist:

Die NuGet-Packages wurden nicht restored und deswegen kamen natürlich sehr viele Folgefehler vom Build, weil ja eben die Packages fehlen.

Bisherige Lösung:
Ich habs jetzt so gelöst, dass ich den .NET-Build-Task, den NuGet-Installer Task und den NuGet-Restore-Task durch einen msbuild-Task ersetzt habe, den es ja auch noch gibt.

Habe diesem den Parameter

/t:restore mitgegeben.

Plus alles angeklickt im selben msbuild task was mit restore zu tun hat.
Ab dann hat es funktioniert.

Hinweis: Das funktioniert zwar, führt aber zu einer Warnung, weil dieses Vorgehen eigentlich deprecated ist und es so machen soll, wie ich es zuvor versucht habe.

EDIT: Die Warnung verschwindet, wenn man das Häkchen bei restore wegmacht.
Weil das wird ja explizit in /t:restore so schon übergeben. 😃

Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.