【发布时间】:2020-01-08 00:41:59
【问题描述】:
我的项目是一个 AspNet Core 2.2 Api,我在 Azure Pipelines(经典)中构建它
- 我在工作开始时将Use .NET Core 任务设置为 2.2
- 我已经使用 .NET Core 任务 和带有参数
install swashbuckle.aspnetcore.cli --version 5.0.0-rc4 --global的 custom 工具命令安装了工具,这似乎有效;如果我再次运行此任务,则会失败并显示该工具已安装的消息。 -
然后在我的 CI 构建中,我添加了一个带有设置的 .NET Core 任务
- 自定义命令
- 项目路径到csproj 文件路径
-
swagger的自定义命令 -
tofile --output $(Build.ArtifactStagingDirectory)/swagger.json $($(Build.ArtifactStagingDirectory)_Dxxxxx.Api.dll v1的参数
我收到此错误No executable found matching command "dotnet-swagger"
【问题讨论】:
-
尝试添加你的
.csproj这个:<ItemGroup> <DotNetCliToolRefernce Include-Swashbuckle.AspNetCore.Cli" Version="5.0.0" /> </ItemGroup> -
你在本地的vs中试过了吗?此错误似乎与 Azure DevOps 无关,请关注 github.com/domaindrivendev/… 并在本地执行此操作,看看是否可以重现该问题。很可能是 cli 工具未正确安装,或者此工具与您的核心 sdk 之间存在版本冲突。
-
我还没有找到解决该问题的具体方法 - 我已为每个 @ShaykiAbramczyk cmets 添加了
DotNetCliToolRefernce。但是我通过添加一个命令行任务来解决它并直接从这个任务执行 swagger.exe
标签: asp.net-core swagger azure-pipelines swashbuckle swashbuckle.examples