【问题标题】:Can't load Antlr3.Runtime, HRESULT: 0x80131040无法加载 Antlr3.Runtime,HRESULT:0x80131040
【发布时间】:2014-07-03 16:42:35
【问题描述】:

在我的计算机上,我们的 MVC 4 项目中的某些东西似乎很损坏 :( 一开始项目突然认为它是一个 Windows 项目,我不能添加任何视图或控制器。我将它修复到它是 MVC 的地步再次,但是 1)它没有用于 Razor 的 Intellisense,并且 2)它没有启动,显示此错误:

Die Datei oder Assembly "Antlr3.Runtime" oder eine Abhängigkeit davon wurde nicht gefunden。 Die gefundene Manifestdefinition der Assembly stimmt nicht mit dem Assemblyverweis überein。 (Ausnahme von HRESULT: 0x80131040)

(抱歉,没有找到完整的准确英文翻译。这意味着它正在尝试加载错误版本的 Antlr3.Runtime)。

我尝试过但没有成功:

  • 删除 %TEMP% 中的所有文件
  • 清理和重建解决方案
  • 卸载Antlr3和依赖库(MVC优化需要,好像跟Intellisense问题有关)。更新了 NuGet 管理器,然后重新安装了 Antlr 和其他。
  • 检查了 Antlr3 参考的属性。它设置为“特定版本 - > false”,在 Web.config 中,我有条目

      <dependentAssembly>
    <assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" 
    culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
    

奇怪的是

  • 当我创建一个新的 MVC 项目时,它可以工作
  • 该项目在我同事的计算机上运行良好。

由于第二点,我完全放弃了我的旧工作区,创建了一个新工作区,并从 TFS 获得了新的项目。我还对我们的 .csproj 文件进行了比较。这是在我尝试上述解决方案之前。它仍然没有帮助。

任何想法我可以从这里做什么?

【问题讨论】:

标签: asp.net-mvc razor assemblies


【解决方案1】:

如果以上都不能解决你的问题,请看我的回答:Could not load file or assembly 'Antlr3.Runtime' or one of its dependencies

【讨论】:

    【解决方案2】:

    这对我很有帮助(我觉得很舒服,因为我不必更改任何晦涩的设置或删除我真的不知道的文件)

    1. 从文件 packages.config 中注释掉 &lt;package id="Antlr" version="3.4.1.9004" targetFramework="net45"/&gt; 行。
    2. 重新编译运行->没有问题出现
    3. 再次激活&lt;package id="Antlr" version="3.4.1.9004" targetFramework="net45"/&gt; 行。

    【讨论】:

      【解决方案3】:

      原来的解决方案是在 References 中选择错误的程序集,打开它的 Properties,然后将 Copy Local 设置为 false。为了更好地衡量,我还从它自己的文件夹以及 Debug 和 Bin 文件夹中手动删除了 .dll,并从我同事的机器中获取了一份副本到它的 Antlr 文件夹中。之后,项目开始在浏览器中正确显示。

      一旦涉及到,安装 Visual Studio 2013 工具就可以解决 Intellisense 问题。

      【讨论】:

        猜你喜欢
        • 2018-04-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-26
        • 1970-01-01
        • 2016-12-14
        相关资源
        最近更新 更多