【问题标题】:ServiceStack F# sample fails startingServiceStack F# 示例无法启动
【发布时间】:2013-12-10 16:42:14
【问题描述】:

我正在尝试使用最新的 ServiceStack 版本 (4.0.3) 和最新的 Mono/F# (3.2.5) 运行 this Self Hosting example

appHost.Init() 上出现异常并失败:

{ System.IO.FileNotFoundException:找不到虚拟文件文件名:'.FSharpSignatureData.'
在 /ServiceStack/VirtualPath/ResourceVirtualDirectory.cs:99 中的 ServiceStack.VirtualPath.ResourceVirtualDirectory.CreateVirtualFile (System.String resourceName) [0x00033] } System.IO.FileNotFoundException

C# 示例不会发生同样的情况。

显然,它会查找一些作为资源添加到 F# 程序集中但未映射到物理文件的文件。

【问题讨论】:

    标签: f# mono servicestack


    【解决方案1】:

    F# 执行一些“元数据缓存”,将资源(FSharpSignatureData、FSharpOptimizationData)放入程序集中。这会在 ServiceStack 设置其虚拟文件系统时导致问题,因为它希望将这些资源映射到实际文件(我认为)。

    您可以通过在构建/编译步骤中添加标志 --nointerfacedata 来解决此问题。 (在 VS 属性 > 构建 > '其他标志')

    我一直想将其发布到 GitHub 问题页面。

    【讨论】:

    • 好的,我将尝试检查该标志是否在最新的 Xamarin Studio 中也有效(我正在为 OSX 使用 Mono 实现)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-25
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 2011-04-21
    • 2018-08-17
    • 1970-01-01
    相关资源
    最近更新 更多