Я обновляю проект для использования. Net Core 3.1 из 2.2, и я изо всех сил пытаюсь заставить мои инструменты работать.
У меня есть этот раздел в моем файле .csproj, который генерирует файл swagger. json во время публикации sh - он выполняется в нашем конвейере сборки и публикуется как артефакт.
<ItemGroup>
<DotNetCliToolReference Include="Swashbuckle.AspNetCore.Cli" Version="5.2.1" />
</ItemGroup>
<Target Name="Swagger" AfterTargets="PrepareForPublish" DependsOnTargets="Build" Outputs="$(PublishDir)swagger.json">
<Exec Command="dotnet swagger tofile --output $(PublishDir)swagger.json $(OutputPath)\$(AssemblyName).dll v1" />
</Target>
Но я получаю следующие ошибки:
Package Swashbuckle.AspNetCore.Cli 5.2.1 is not compatible with netcoreapp2.2 (.NETCoreApp,Version=v2.2). Package Swashbuckle.AspNetCore.Cli 5.2.1 supports:
- netcoreapp2.1 (.NETCoreApp,Version=v2.1) / any
- netcoreapp3.0 (.NETCoreApp,Version=v3.0) / any
и:
Invalid project-package combination for Swashbuckle.AspNetCore.Cli 5.2.1. DotnetToolReference project style can only contain references of the DotnetTool type
Странно то, что мой проект использует 3.1 - я сделал Ctrl + F на «netcoreapp2.2» и «2.2» и не может найти нигде, что было указано. Как заставить мой инструмент CLI использовать правильную версию. NET Базовая версия?