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

Azure DevOps发布任务遇NETSDK1152错误:存在重复发布输出文件

解决NETSDK1152:多个发布输出文件路径冲突问题

遇到NETSDK1152错误是因为发布过程中,PartsUnlimited.Models和PartsUnlimitedWebsite两个项目的config.json都会被输出到发布目录的相同相对路径(根目录),导致文件冲突。以下是几种可行的解决方案:

方案1:修改其中一个文件的发布输出路径

打开PartsUnlimited.Models项目的.csproj文件,找到config.json对应的Content配置节点,通过添加<Link>属性指定其发布到子目录,避免根目录冲突:

<ItemGroup>
  <Content Include="config.json">
    <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
    <Link>Models/config.json</Link> <!-- 输出到发布目录的Models子文件夹 -->
  </Content>
</ItemGroup>

这样两个config.json会被分别输出到根目录和Models子目录,不再冲突。

方案2:排除其中一个文件参与发布

如果PartsUnlimited.Models的config.json不需要随发布包输出,直接修改其.csproj配置,阻止该文件被复制到发布目录:

<ItemGroup>
  <Content Include="config.json">
    <CopyToPublishDirectory>Never</CopyToPublishDirectory>
  </Content>
</ItemGroup>

或者直接从发布内容中移除该文件:

<ItemGroup>
  <Content Remove="config.json" />
</ItemGroup>

方案3:在主项目中允许文件重复/指定覆盖规则

打开PartsUnlimitedWebsite.csproj,添加配置允许config.json重复,或者指定保留哪个项目的文件:

允许特定文件重复

<PropertyGroup>
  <AllowedDuplicateFiles>config.json</AllowedDuplicateFiles>
</PropertyGroup>

指定跳过某个来源项目的重复文件

<ItemGroup>
  <DuplicateFilesToSkip Include="config.json" Condition="'%(DuplicateFilesToSkip.SourceProject)' == 'PartsUnlimited.Models'" />
</ItemGroup>

这种方式会保留主项目的config.json,跳过Models项目的同名文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 10:17:09