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

发布Blazor Server应用时遇‘源文件实为目录’错误,如何修复?

解决Blazor Server发布时ICON-LICENSE目录冲突问题

可行的解决/规避方法:

1. 手动修正NuGet包的目录结构

找到冲突的NuGet包路径:C:\Users\xxxxx\.nuget\packages\blazorpropertygridcomponents\1.0.0\staticwebassets\css\open-iconic\

  • 将ICON-LICENSE目录内的同名无扩展名文件移动到上级open-iconic目录下
  • 删除空的ICON-LICENSE目录
    这样发布时就不会把目录当成文件处理。

2. 在项目文件中排除冲突目录

编辑你的Blazor Server项目的.csproj文件,添加以下内容,让静态资源发布时跳过这个有问题的目录:

<ItemGroup>
  <StaticWebAsset Remove="css/open-iconic/ICON-LICENSE/**" />
</ItemGroup>

3. 修改发布配置文件排除冲突项

打开你提供的发布配置文件(.pubxml),在现有PropertyGroup节点后添加以下内容:

<ItemGroup>
  <ExcludeFromPackageFiles Include="**/ICON-LICENSE/**" />
</ItemGroup>

这样发布过程会自动跳过该目录的复制操作。

4. 反馈给NuGet包作者修复根源

这个问题属于blazorpropertygridcomponents包的静态资源结构错误(目录与文件同名导致MSBuild复制任务混淆),可以直接联系包作者提交问题,要求修正目录结构,从根源解决问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 15:15:32