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

LibGit2Sharp NativeMethods初始化异常:程序集依赖不匹配求助

解决LibGit2Sharp类型初始化异常(System.Runtime.InteropServices.RuntimeInformation版本不匹配)

看起来你遇到的是LibGit2Sharp在依赖加载上的版本冲突问题,结合你提到的POC项目正常、大型项目异常的差异,我整理了几个针对性的排查和解决步骤:

1. 先检查项目目标框架版本

LibGit2Sharp 0.25.0对.NET框架版本有明确要求,System.Runtime.InteropServices.RuntimeInformation这个程序集是在.NET Framework 4.6及以上、.NET Core版本中才引入的。你的POC项目大概率用了兼容的框架版本,而大型项目可能还停留在更旧的框架(比如4.5及以下),这就会导致找不到该程序集。

  • 右键失败项目 → 属性 → 应用程序,查看目标框架是否和POC项目一致,建议使用**.NET Framework 4.6.1及以上**版本。
  • 如果必须保留旧框架,可以尝试手动安装System.Runtime.InteropServices.RuntimeInformation NuGet包,选择兼容的版本(比如4.3.0),但要注意可能带来的其他依赖冲突。

2. 彻底重置NuGet依赖

两个项目的依赖表现差异是关键——正常项目没有附带NativeBinaries,失败项目却有,说明依赖安装过程中出现了异常。咱们彻底清理后重新安装:

  • 先在失败项目的NuGet控制台执行以下命令:
    Uninstall-Package LibGit2Sharp -RemoveDependencies
    Uninstall-Package LibGit2Sharp.NativeBinaries -Force
    
    执行完成后,检查项目的packages.config或.csproj文件,删除残留的依赖引用,确保清理干净。
  • 然后重新安装LibGit2Sharp 0.25.0:
    Install-Package LibGit2Sharp -Version 0.25.0
    
    安装时留意NuGet的输出日志,确认自动安装的依赖版本匹配,避免旧版本的NativeBinaries被混入。

3. 检查程序集绑定重定向

大型解决方案通常会有全局的程序集绑定配置,可能把System.Runtime.InteropServices.RuntimeInformation强制重定向到了不兼容的版本,导致程序集清单定义与引用不匹配。

  • 打开失败项目的App.config或Web.config,查找<assemblyBinding>节点,检查是否存在关于该程序集的重定向规则。
  • 如果发现冲突规则,添加一条正确的绑定配置,示例如下:
    <dependentAssembly>
      <assemblyIdentity name="System.Runtime.InteropServices.RuntimeInformation" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
      <bindingRedirect oldVersion="0.0.0.0-4.0.2.0" newVersion="4.0.2.0" />
    </dependentAssembly>
    
    注意版本号要根据你实际安装的NuGet包版本调整。

4. 清理缓存后重建项目

大型项目容易残留旧的编译文件,导致版本冲突一直存在:

  • 点击菜单栏的「生成」→「清理解决方案」。
  • 手动删除项目的bin和obj文件夹,彻底清理残留的编译产物。
  • 重启Visual Studio后,重新生成整个解决方案。

5. 统一NativeBinaries版本

LibGit2Sharp与其依赖的NativeBinaries版本必须严格对应,0.25.0对应的NativeBinaries版本是1.0.210,但你的大型解决方案中可能有其他项目引用了不同版本的NativeBinaries,导致冲突。

  • 打开NuGet包管理器的「管理解决方案的NuGet程序包」,查看所有项目中LibGit2Sharp.NativeBinaries的版本,统一调整为1.0.210。
  • 如果部分项目无法调整版本,可以通过程序集绑定重定向来解决版本冲突问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 10:04:47