2015-09-02 2 views
28

У меня есть решение VS и как часть TeamCity Build мы восстанавливаем пакеты как из фида NuGet (myget), так и из общего канала (nuget.org). Большинство пакетов восстанавливаются нормально, но они зависают на приведенных ниже для WebApi и Mono.Security. Все это работает локально в Visual Studio.Nuget Restore через сервер сборки «не удалось найти версию»

[restore] NuGet command: C:\TeamCity\buildAgent\plugins\nuget-agent\bin\JetBrains.TeamCity.NuGetRunner.exe C:\TeamCity\buildAgent\tools\NuGet.CommandLine.DEFAULT.nupkg\tools\NuGet.exe restore C:\TeamCity\buildAgent\work\953bd084b49f7d88\DataFinch.Web.sln -Source https://www.myget.org/F/datafinch/auth/<hidden>/api/v2 -Source https://api.nuget.org/v3/index.json 
[11:41:35][restore] Starting: C:\TeamCity\buildAgent\temp\agentTmp\custom_script473789219385667038.cmd 
[11:41:35][restore] in directory: C:\TeamCity\buildAgent\work\953bd084b49f7d88 
[11:41:35][restore] JetBrains TeamCity NuGet Runner 8.0.37059.9 
[11:41:35][restore] Registered additional extensions from paths: C:\TeamCity\buildAgent\plugins\nuget-agent\bin\plugins-2.8 
[11:41:35][restore] Starting NuGet.exe 2.8.50926.602 from C:\TeamCity\buildAgent\tools\NuGet.CommandLine.DEFAULT.nupkg\tools\NuGet.exe 
[11:41:43][restore] Unable to find version '5.2.3' of package 'Microsoft.AspNet.WebApi.Client'. 
[11:41:43][restore] Unable to find version '5.2.3' of package 'Microsoft.AspNet.WebApi.Core'. 
[11:41:43][restore] Unable to find version '3.2.3.0' of package 'Mono.Security'. 
[11:41:43][restore] Unable to find version '6.0.4' of package 'Newtonsoft.Json'. 
[11:41:43][restore] Process exited with code 1 

Teamcity конфигурации: enter image description here

+0

Вы добавили частный источник в Nuget.targets? https://docs.nuget.org/consume/package-restore – Tony

ответ

30

Попробуйте использовать https://www.nuget.org/api/v2 вместо https://api.nuget.org/v3/index.json согласно NuGet документы: https://docs.nuget.org/consume/Command-Line-Reference.

+1

Работает для меня снова, когда я переключаюсь с v2 на v3. Спасибо за подсказку. – timmkrause

+1

Или обновите файл nuget.exe, он будет использовать новый URL по умолчанию. – xmedeko

+2

У меня возникла проблема с использованием _new_ приватного фида NuGet с _old_ версией 'NuGet.exe'. Чтобы исправить это, откройте командную строку 'cd' в папку' .nuget' и запустите '. \ NuGet.exe update -self'. – Phil

2

Причина, по которой сборка не удалась, была старой версией nuget.exe. Я, наконец, решил эту проблему, загрузив последнюю версию и поместив ее в папку Program Files x86. Затем я создал новую систему, чтобы указать на этот исполняемый файл. После этого я добавляю пакет NuGetInstaller в моем определении сборки TFS, чтобы настроить TFS с помощью этого нового файла NuGet.exe. This link helped me to let TFS use this new NuGet version

0

Я следовал за этим: https://blogs.msdn.microsoft.com/tfssetup/2017/04/18/tfs-2017-update-1-nuget-restore-task-always-fails-trying-to-find-packages-even-though-they-exist-on-the-feed/

Я попытался 3.3 и получил эту ошибку:

Restoring NuGet package Microsoft.AspNet.WebPages.3.2.3. WARNING: Unable to find version '3.5.0.2' of package 'Antlr'.

Я скачал последнюю NuGet 4.3.0.4406 и установить пользовательский путь к NuGet и что не удалось, как Что ж.

Удивительно, когда я переключился на 3.5, это сработало.

enter image description here

Если вы действительно застряли, запустите команду в командной строке, строка, и он будет работать:

C:\Program Files (x86)\NuGet\nuget.exe restore -NonInteractive E:\agentXYZPool\_work\1\s\xyz.sln 
0

Я столкнулся с этой проблемой с одним из наших строительных рабов Усиливая TFS и Visual Studio.

Путь я установил это, я открыл решение, которое не компиляцией в Visual Studio, щелкните правой кнопкой мыши на СЛН и выбрали «Enable Восстановить NuGet Пакеты»

, предлагающее диалоговое окно, в котором у вас есть принять. После того, как вы это сделаете, вам будет хорошо. Щелкните правой кнопкой мыши на SLN и запустите «Восстановить пакеты NuGet», и если эта операция завершится успешно, вы будете золотыми.

Возможно, есть некоторые настройки, которые вы можете настроить программно, настроив рабочую среду, но это единственный прямой способ устранить эту проблему.

Смежные вопросы