2015-12-14 102 views
0

我無法運行任何ServiceFabric示例。服務結構 - 啓動時出現FileNotFoundException

我使用Windows 8.1,VS 2015 Community Edition(作爲Adminstrator運行)。 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 Community Edition,SDK,然後嘗試運行示例。我感動ServiceFabric路徑到我的PATH變量的開頭,如MSND論壇的建議,以避免在一個名爲zip.dll以及文件衝突。

回答

1

有同樣的問題。檢查了這裏的建議:https://github.com/Azure/azure-content/blob/master/articles/service-fabric/service-fabric-diagnostics-troubleshoot-common-scenarios.md

...有關de FileNotFoundException,但一切都是複製本地。似乎無法找到丟失的文件。我正在運行所有的第一個樣本: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:NAO existeespaçosuficiente沒有迪斯科。 (Excepção德HRESULT:0x80070070) EM System.Fabric.Data.Log.Interop.NativeLog.IKPhysicalLogManager.EndCreateLogContainer(IFabricAsyncOperationContext背景下,IKPhysicalLogContainer &結果) EM System.Fabric.Data.Log.Interop.PhysicalLogManager.b__1(IFabricAsyncOperationContext上下文) em System.Fabric.Interop.AsyncCallOutAdapter2`1.Finish(IFabricAsyncOperationContext context,Boolean expectedCompletedSynchronously) --- Fim do rastreio da pilha deexcepçãointerna ---