.net 项目中具有相同目标路径“css/app.css”的资源冲突

问题描述 投票:0回答:1

我在 .net 解决方案中有一些项目,其中 2 个是:Client(blazor)和Mobile(maui)。 Client 项目有 wwwroot 文件夹和 css 文件夹。 Mobile 项目还有 wwwroot 文件夹和 css 文件夹。在 Mobile 项目中,我将 dependency link 配置到 Client 项目(具有服务)。但从某个时刻到下一个时刻,它都会生成错误并且不会执行该项目。它向我显示了一个错误,我在下图中详细说明了该错误:

conflicting assets css

我尝试删除 Mobile 项目的 wwwroot 文件夹,但没有成功。我还尝试删除 wwwroot/css 文件夹,但这也不起作用。 请有人帮我解决这个问题,谢谢...

.net asp.net-core assets
1个回答
0
投票

.net 中具有相同目标路径“css/app.css”的资源冲突 项目。我尝试删除 Mobile 项目的 wwwroot 文件夹 但没有成功。我也尝试删除 wwwroot/css 文件夹,但是 那也没有用。

好吧,如果您可以分享您的可重复样本或任何进一步调查的样本,那就更好了。

但是,根据您的描述和错误消息,错误“具有相同目标路径‘css/app.css’的资产冲突”表明客户端和移动项目都试图将名为 app.css 的文件发布到同一位置在最终输出中。 这种冲突会导致构建过程无法成功完成。

为了解决此问题,您可以将客户端或移动项目的 app.css 重命名为其他名称(例如 mobile-app.css 或 client-app.css)。确保在各自项目的 Razor 组件或 Maui 视图中更新对重命名文件的所有引用。

此外,如果合适,请使用预处理器指令

(e.g., #ifdef / #endif in C#)
根据构建配置(例如客户端或移动设备)有选择地包含不同的 CSS 片段。这允许您维护一个包含条件内容的 app.css 文件。

除此之外,如果 Mobile 项目实际上不需要自己的 app.css 文件,您可以配置该项目以将其排除在发布之外。 在您的 Mobile 项目中,打开 .csproj 文件。 找到

<Content>
元素并找到
wwwroot/css/app.css
的条目。 将
Exclude="**"
属性添加到条目。这告诉构建过程不要将 app.css 复制到输出文件夹。

完成上述更改后,重建项目并检查。

注意:文件结构静态文件内容配置请参考此官方文档

© www.soinside.com 2019 - 2024. All rights reserved.