首页 > 解决方案 > 错误 MSB3103:Resx 文件无效。指定的模块无法找到

问题描述

我正在尝试第一次使用 Jenkins 和 build.ps1 在 docker 内构建 c#项目

详细错误:

C:\myproject\Properties\Resources.resx:错误 MSB3103:Resx 文件无效。在第 123 行第 5 位输入数据,无法加载,因为它在构建过程中抛出了以下异常:找不到指定的模块 [C:\myproject\myproject.Config.csproj]

我可以知道为什么会这样吗?任何原因?

更新

这是资源.resx

 121  : <data name="config_icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
 122  :   <value>..\Resources\config_icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
 123  : </data>

这是 Config.csproj

 123  : <Reference Include="CommonServiceLocator, Version=2.0.4.0, Culture=neutral, PublicKeyToken=489b6accfaf20ef0, processorArchitecture=MSIL">
 124  :<HintPath>..\packages\CommonServiceLocator.2.0.4\lib\net46\CommonServiceLocator.dll</HintPath>
 125  :       </Reference>

我不确定错误消息中的这一行 no 是否真的指向错误。

标签: c#dockerjenkinsbuildmsbuild

解决方案


在 .resx 文件的属性 Windows(Ctrl+W, P) 中,将持久性属性更改为:“嵌入 .resx 文件”以解决问题。

如果您在 Linux 系统中使用 docker 镜像构建项目,所有资源名称必须为小写相关答案


推荐阅读