You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何消除Azure Builds中DotNetCoreCLI@2发布任务的多余win-x64文件夹

解决Azure Builds中DotNetCoreCLI发布多生成win-x64文件夹的问题

嘿,这个问题我之前也碰到过!你看到的多余win-x64文件夹,本质是因为你的FolderProfile发布配置里指定了运行时标识符(RID)为win-x64,而DotNet的publish命令默认会把输出文件嵌套在bin/[配置]/[框架]/[RID]/publish路径下,这就导致多了一层win-x64目录。

有两种简单的方法可以调整,你选哪种都行:

方法一:直接在DotNetCoreCLI任务里指定发布路径

修改任务的arguments参数,添加/p:PublishDir来指定最终的输出目录,比如直接指向构建工件目录下的publish文件夹:

- task: DotNetCoreCLI@2
  displayName: Publish API Single File
  inputs:
    command: 'publish'
    arguments: '/p:PublishProfile=FolderProfile /p:PublishDir=$(Build.ArtifactStagingDirectory)/publish'

这样发布完成后,所有文件都会直接放到你指定的publish文件夹里,不会再嵌套win-x64层级。

方法二:修改PublishProfile配置文件

打开你的FolderProfile.pubxml文件,在<PropertyGroup>节点里添加PublishDir的配置,指定你想要的输出路径:

<PublishDir>$(Build.ArtifactStagingDirectory)/publish</PublishDir>

保存后,你的原任务配置不用做任何修改,发布时就会自动把文件输出到指定路径,跳过多余的win-x64文件夹。

另外要确认一下,你的FolderProfile里已经包含<PublishSingleFile>true</PublishSingleFile>(毕竟你是要单文件发布),这个配置不影响路径,只是保证生成单文件可执行程序。

内容的提问来源于stack exchange,提问作者Rod

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 21:42:59