Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core Azure管道-构建和gen-swagger文档_Asp.net Core_Swagger_Azure Pipelines_Swashbuckle_Swashbuckle.examples - Fatal编程技术网

Asp.net core Azure管道-构建和gen-swagger文档

Asp.net core Azure管道-构建和gen-swagger文档,asp.net-core,swagger,azure-pipelines,swashbuckle,swashbuckle.examples,Asp.net Core,Swagger,Azure Pipelines,Swashbuckle,Swashbuckle.examples,我的项目是一个AspNet Core 2.2 Api,我正在Azure Pipelines(经典)中构建它。我想在Azure pipeline构建期间生成swagger文档——为此我正在使用 在作业开始时,我将任务设置为2.2 我已经使用带有参数的.NET Core任务和自定义工具命令安装了这些工具install swashback.aspnetcore.cli--version 5.0.0-rc4--global,这似乎是可行的;如果我再次运行此任务,它将失败,并显示消息“工具已安装” 然后在

我的项目是一个AspNet Core 2.2 Api,我正在Azure Pipelines(经典)中构建它。我想在Azure pipeline构建期间生成swagger文档——为此我正在使用

  • 在作业开始时,我将任务设置为2.2
  • 我已经使用带有参数的.NET Core任务和自定义工具命令安装了这些工具
    install swashback.aspnetcore.cli--version 5.0.0-rc4--global
    ,这似乎是可行的;如果我再次运行此任务,它将失败,并显示消息“工具已安装”
  • 然后在我的CI构建中,我添加了一个带有设置的.NET核心任务

    • 自定义命令
    • 指向csproj文件路径的项目路径
    • 自定义命令以
      swagger
    • tofile的参数--输出$(Build.artifactstagindirectory)/swagger.json$($(Build.artifactstagindirectory)\u dxxx.Api.dll v1
  • 我收到此错误
    未找到与命令“dotnet swagger”匹配的可执行文件

    救命啊!

    尝试添加您的
    .csproj
    此:
    您在本地vs中尝试过吗?此错误似乎与Azure DevOps无关,请在本地vs中执行此操作,看看是否可以重现此问题。很可能cli工具未正确安装,或者此工具与您的核心sdk之间存在版本冲突。我没有找到问题的具体解决方案-我已经根据@Shaykibaramczyk注释添加了
    DotNetClitoolReference
    。但是我通过添加一个命令行任务来解决这个问题,并直接从此任务执行swagger.exe尝试添加到您的
    .csproj
    此:
    您在本地vs中尝试过吗?此错误似乎没有关系关于Azure DevOps,请遵循并在本地vs中执行此操作,看看您是否可以重现此问题。很可能cli工具未正确安装,或者此工具与您的核心sdk之间存在版本冲突。我尚未找到此问题的特定解决方案-我已添加了每个@Shaykibaramczyk注释的
    dotNetClitoolReference
    s、 但是,我通过添加一个命令行任务来解决这个问题,并直接从此任务执行swagger.exe