单声道 - 无法加载文件或程序集

时间:2010-02-05 22:34:03

标签: mono assemblies gac monodevelop xsp

我刚将我的项目导出到我的新imac,将我的解决方案加载到monodevelop中。 成功编译后,我启动了项目,我总是得到同样的错误。

  

**(/ Library/Frameworks/Mono.framework/Versions/2.6.1/lib/mono/2.0/xsp2.exe:1576):警告**:从/ private / var / folders /引用以下程序集9y / 9ypfv24bEwieHw + Yy + PUsU +++ TI / -Tmp- / nhu-temp-aspnet-0 / ebc9e2c6 / assembly / shadow / 7f5f6265 / 859daf16_fac2cd73_00000001 / Centrism.Administration.UI.dll无法加载:        汇编:Centrism.Core(assemblyref_index = 3)        版本:0.0.3688.40278        公钥:(无)   在全局程序集缓存,MONO_PATH环境变量中列出的路径或执行程序集的位置(/ var / folders / 9y / 9ypfv24bEwieHw + Yy + PUsU +++ TI / -Tmp- /)中找不到程序集NHU-TEMP-ASPNET-0 / ebc9e2c6 /组件/阴影/ 7f5f6265 / 859daf16_fac2cd73_00000001 /).

     

**(/ Library/Frameworks/Mono.framework/Versions/2.6.1/lib/mono/2.0/xsp2.exe:1576):警告**:无法加载文件或程序集'Centrism.Core,Version = 0.0.3688.40278,Culture = neutral,PublicKeyToken = null'或其依赖项之一。

在其他项目中,装配工作正确并且可以加载。

4 个答案:

答案 0 :(得分:3)

我遇到了与应用程序程序集位于同一路径的dll同样的问题,问题是dll名称的情况与预期的情况不同。所以Abc.dll丢失了,在名为abc.dll的文件夹中,重命名后,它运行了。

答案 1 :(得分:1)

我想我会问明显的:

您是否拥有Mono所知的Centrism.Core.dll并且可以到达?

答案 2 :(得分:1)

如果您的项目引用了Centrism.Administration.UI.dll,并且它不在您的iMac上的GAC中,最简单的解决方案可能是将该程序集的引用设置为“Local Copy”。对于Web项目,这会将程序集复制到应用程序的Bin目录中,其中xsp应该可以将其拾取。

答案 3 :(得分:0)

在向现有项目添加新程序集时(我自己被单元测试项目引用),我遇到了这个错误。

由于程序集未包含在两个项目中,因此单元测试会出错。解决方案是在项目文件中添加Copy标记:

<Copy SourceFiles="$(ProjectDir)\dlls\NewAssembly.dll" DestinationFolder="$(OutputPath)" SkipUnchangedFiles="true" />

据推测,将引用直接添加到单元测试中也是有效的(此引用不是直接使用的,因此可以避免在上面使用)。