2013-05-17 16 views
1

我想使用「socket.io-servicebus」模塊到我的node.js應用程序。安裝「socket.io-servicebus」後未創建cloud_package.cspkg文件

但是我遇到了一個問題。 安裝「socket.io-servicebus」後,cloud_package.cspkg文件不是由「Publish-AzureServiceProject」命令創建的。

我在Windows7 64bit版上使用「Windows Azure PowerShell」。

這是程序。

  • 新AzureServiceProject test1的
  • 附加AzureNodeWebRole WWW
  • CD WWW
  • NPM安裝socket.io-servicebus
  • 發佈 - AzureServiceProject -ServiceName XXX ...

    [ cloud_package.cspkg不會創建]

順便說一句「Start-AzureEmulator -Launch"將成功,我們可以測試自己的應用程序。

請給我一些建議。謝謝。

+0

我有這個完全相同的問題!如果你能分享你如何解決這個問題,那將是非常好的。 –

回答

-1

看起來這裏的問題是由於已知的路徑長度限制。 Azure對包中的路徑的限制超過了255個字符,在這種情況下,將socket.io與其所有依賴關係一起導入到該路徑中。

這裏有幾種可能的解決方法。

答: - 拉起節點模塊並在服務器上解壓縮。

基本上你會壓縮你的模塊並在模塊中發佈模塊zip。然後,您可以在服務器上使用Azure啓動任務(在您的cscfg中)解壓縮這些文件。

Publish-AzureServicePackage將抓取項目中的所有內容,因此在這種情況下,您只需要在發佈之前運行一個腳本,即創建node_modules存檔並刪除node_modules。

我打算在此做一個博客文章,但它實際上相對容易。

B. - 下載節點模塊動態

您可以在雲中下載模塊。這也可以通過啓動任務完成,如here所示。

如果你看看那篇文章,你將會看到如果你決定做歸檔路由,你將如何編寫一個啓動任務。

隨時ping我有任何問題。

+0

先生Glenn Block, 對不起,我今天沒時間檢查你的回覆。 實際上,我使用的是由Fujitsu提供的名爲FGCP/A5的Azure平臺。 因此,我必須單獨從普通命令部署我的cloud_package.cspkg文件。 這是我的其他信息。 非常感謝您的幫助。 – user2392972