Fake/Paket "specified module could not be found" 在构建文件中
Fake/Paket "specified module could not be found" in build file
我创建了以下 Github 存储库来记录问题:
https://github.com/red-swan/fake-sqlite-problem
我无法从依赖于 Paket
的 F# FAKE
文件构建 sqlite
数据库。将 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
位于 System.Data.SQLite
的依赖项 System.Data.SQLite.Core
的依赖项 runtimes\win-x64\native\netstandard2.0
中。尝试在 build.fsx
中使用 #r
语句直接引用它失败并出现错误:
Error opening binary file ... bad cli header, rva
我不确定应该如何解决所有问题,但是 运行 从实际 fsproj
创建的数据库工作得很好,所以我相信它与 FAKE
或 Paket
分辨率。
如果您熟悉 FAKE
,这听起来合理吗?你知道如何解决这个问题吗?
重现错误:
git clone https://github.com/red-swan/fake-sqlite-problem.git
上面TeaDrivenDev
的评论有解决办法。我把答案放在这里,这样我就可以结束这个问题了。
具体来说,我找到了 Native dll SQLite.Interop.dll
并将其放入 FAKE build.fsx
文件所在的根文件夹中。文章 TeaDrivenDev
参考资料也有替代方法。
我创建了以下 Github 存储库来记录问题: https://github.com/red-swan/fake-sqlite-problem
我无法从依赖于 Paket
的 F# FAKE
文件构建 sqlite
数据库。将 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
位于 System.Data.SQLite
的依赖项 System.Data.SQLite.Core
的依赖项 runtimes\win-x64\native\netstandard2.0
中。尝试在 build.fsx
中使用 #r
语句直接引用它失败并出现错误:
Error opening binary file ... bad cli header, rva
我不确定应该如何解决所有问题,但是 运行 从实际 fsproj
创建的数据库工作得很好,所以我相信它与 FAKE
或 Paket
分辨率。
如果您熟悉 FAKE
,这听起来合理吗?你知道如何解决这个问题吗?
重现错误:
git clone https://github.com/red-swan/fake-sqlite-problem.git
上面TeaDrivenDev
的评论有解决办法。我把答案放在这里,这样我就可以结束这个问题了。
具体来说,我找到了 Native dll SQLite.Interop.dll
并将其放入 FAKE build.fsx
文件所在的根文件夹中。文章 TeaDrivenDev
参考资料也有替代方法。