Ошибка восстановления Nuget в VSO Build Pipeline - PullRequest
1 голос
/ 22 марта 2019

Не удалось восстановить Nuget из конвейера сборки VSO из-за некоторых пакетов nuget, которые не совместимы с netcoreapp2.1.Однако, когда я просмотрел все файлы csproj в решении, ни у одного из файлов csproj не было этих пакетов nuget.Я мог бы установить их раньше, но сейчас это определенно не здесь.

enter image description here

Вот файл csproj, упомянутый в сообщении об ошибке.

 <ItemGroup>
    <PackageReference Include="Microsoft.AspNet.WebApi" Version="5.2.6" />
    <PackageReference Include="Microsoft.Extensions.Configuration" Version="2.2.0" />
    <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.2.0" />
    <PackageReference Include="xunit" Version="2.4.1" />
    <PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
  </ItemGroup>

Вот файл Nuget.Config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>

Посоветуйте, пожалуйста, как решить эту проблему.

РЕДАКТИРОВАТЬ ====================================================

После удаления пакета nuget из Microsoft.AspNet.WebApi, NugetRestore прошло, но Build solution не удалось.Он показывает другую ошибку

[ошибка] C: \ Program Files \ dotnet \ sdk \ 2.2.104 \ Sdks \ Microsoft.NET.Sdk \ target \ Microsoft.PackageDependencyResolution.targets (208,5):

Ошибка NETSDK1004: файл ресурсов 'd: \ agentwrok \ 18 \ s .... \ obj \ project.assets.json' не найден.Запустите восстановление пакета NuGet, чтобы сгенерировать этот файл.

Это конфигурация для Build Solution

enter image description here Любой совет по следующему шагу?

1 Ответ

2 голосов
/ 22 марта 2019

Ошибка восстановления Nuget VSO Build Pipeline

Так же, как прокомментировал Владимир, вы не должны использовать пакет Microsoft.AspNet.WebApi для проекта ядра .net. Это потому, что этот пакет предназначен для .NETFamework, а не .NET Core / .NETStandard, который не совместим с .NET Core.

Когда вы проверите пакет Microsoft.AspNet.WebApi без nuget.org , вы заметите, что этот пакет имеет зависимость Microsoft.AspNet.WebApi.WebHost, которая предназначена только для .NET Framework:

enter image description here

enter image description here

И подчиненная зависимость Microsoft.AspNet.WebApi.Core пакета Microsoft.AspNet.WebApi.WebHost также предназначена только для .NET Framework:

enter image description here

Итак, причина этой проблемы в том, что пакет Microsoft.AspNet.WebApi и его зависимости несовместимы с .NET Core framework.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...