0

我无法为 ServiceFabric 运行任何示例。

我正在使用 Windows 8.1、VS 2015 社区版(以管理员身份运行)。ServiceFabric SDK 安装到默认位置。

我收到带有以下堆栈跟踪的 FileNotFoundException:

at System.Fabric.Data.Log.Interop.NativeLog.IKPhysicalLogManager.EndOpenLogContainer(IFabricAsyncOperationContext Context, IKPhysicalLogContainer& Result)
at System.Fabric.Data.Log.Interop.PhysicalLogManager.OpenContainerEndWrapper(IFabricAsyncOperationContext Context)  
at System.Fabric.Data.Log.Interop.PhysicalLogManager.<OpenLogContainerAsync>b__5(IFabricAsyncOperationContext Context)
at System.Fabric.Interop.AsyncCallOutAdapter2`1.Finish(IFabricAsyncOperationContext context, Boolean expectedCompletedSynchronously)

遇到此异常并停止调试后,在从 Service Fabric SDK 系统托盘图标中选择“重置本地群集”选项之前,我什至无法成功部署。

我尝试卸载并重新安装,在示例中寻找硬编码路径。

我可以在不同的机器上运行示例,但这是我的主要开发工具箱。在这两种情况下,我都简单地安装了 VS 2015 社区版 SDK,然后尝试运行示例。正如 MSND 论坛中所建议的那样,我将 ServiceFabric 路径移到了我的 PATH 变量的开头,以避免与名为 zip.dll 的文件发生冲突。

4

1 回答 1

1

有同样的问题。检查了这里的建议:https ://github.com/Azure/azure-content/blob/master/articles/service-fabric/service-fabric-diagnostics-troubleshoot-common-scenarios.md

...关于 de FileNotFoundException,但一切都是 Copy Local。似乎找不到丢失的文件。我正在运行第一个示例:https ://azure.microsoft.com/en-us/documentation/articles/service-fabric-create-your-first-application-in-visual-studio/ 。

就我而言,我在 Windows 10 中,运行 VS2015 Enterprise,并安装了 Azure SDK 2.8.2。正如一些帖子所暗示的那样,我已经多次重新启动,但无济于事。这里有一个线程https://azure.microsoft.com/en-us/documentation/articles/service-fabric-reliable-services-quick-start/也讨论了这个问题,但没有提出解决方案。

[编辑] 找到了问题的解决方案。显然,Service Fabric 需要磁盘上有 8Gb 的可用空间。释放空间后,服务似乎运行良好。该提示隐藏在许多事件日志消息之一中:

(粗体字表示:“磁盘空间不足”)。

AsyncCalloutAdapter-58892413:结束委托引发异常 System.Fabric.FabricException:此操作期间发生错误。请检查跟踪日志以获取更多详细信息。---> System.Runtime.InteropServices.COMException: Não existse espaço suficiente no disco。(HRESULT 例外:0x80070070)em System.Fabric.Data.Log.Interop.NativeLog.IKPhysicalLogManager.EndCreateLogContainer(IFabricAsyncOperationContext Context,IKPhysicalLogContainer& Result)em System.Fabric.Data.Log.Interop.PhysicalLogManager.b__1(IFabricAsyncOperationContext Context)em System .Fabric.Interop.AsyncCallOutAdapter2`1.Finish(IFabricAsyncOperationContext context, Boolean expectedCompletedSynchronously) --- Fim do rastreio da pilha de excepção interna ---

于 2016-02-09T22:56:50.473 回答