代码之家  ›  专栏  ›  技术社区  ›  red-swan

构建文件中的“找不到指定模块”是假的/paket

  •  2
  • red-swan  · 技术社区  · 5 年前

    我创建了以下github repo来记录问题: https://github.com/red-swan/fake-sqlite-problem

    我无法建造 sqlite 来自F的数据库# FAKE 文件依赖 Paket . 添加nuget包 System.Data.SQLite paket.dependencies 意味着我能 open System.Data.SQLite 但当尝试从 build.fsx 文件,我得到以下错误:

    (Unable to load DLL 'SQLite.Interop.dll' or one of its dependencies: The specified module could not be found. (Exception from HRESULT: 0x8007007E))

    SQLite.Interop.dll 是否位于依赖项中 runtimes\win-x64\native\netstandard2.0 属于 系统.data.sqlite 依赖性 System.Data.SQLite.Core . 试图直接引用和 #r 声明 FSX 失败,错误为:

    Error opening binary file ... bad cli header, rva

    我不确定应该如何解决所有问题,但从实际运行数据库创建 fsproj 工作很好,所以我相信这和 伪造的 帕基特 分辨率。

    如果你熟悉 伪造的 ,这听起来合理吗?你知道怎么解决这个问题吗?

    要重现错误: git clone https://github.com/red-swan/fake-sqlite-problem.git

    1 回复  |  直到 5 年前
        1
  •  1
  •   red-swan    5 年前

    上述意见 TeaDrivenDev 有解决方案。我把答案放在这里,这样我就可以结束这个问题了。

    具体来说,我找到了本机dll SQLite.Interop.dll 把它放到根文件夹里 build.fsx 文件是。文章 蒂德里文德夫 引用也有其他方法。