2011-09-06 87 views
1

如果我通過Visual Studio創建Azure包,那麼它可以正常運行並在Azure上運行。如果我運行以下cmd,則創建的.cspkg爲8,032KB,而不是通過Visual Studio創建的14,785KB。這個cspack命令行有什麼問題?

生成.cspkg的命令行應該比通過Visual Studio更大,因爲afterbuild事件會創建額外的css/javascript文件。

我想通過命令行來運行它,就像我在本地部署項目時一樣,它會在afterbuild事件中壓縮/縮小,並且我無法弄清楚如何在該過程之後創建Azure包,所以我認爲我會做用這種方式代替。

cspack.exe C:\blah\Azure\ServiceDefinition.csdef 
/role:Project.Web;C:\blah\Deploy 
/sites:Project.Web;Web;C:\blah\Deploy 
/rolePropertiesFile:Project.Web;C:\blah\AzureRoleProperties.txt 
/out:C:\Package.cspkg 

服務定義有:

<Site name="Web" physicalDirectory="..\Project.Web"> 

我的項目只有1個角色,所以我不明白,爲什麼通過Visual Studio中的文件大小是近一倍,我也不能.zip文件添加到.cspkg並查看我的cmd行生成的.cspkg文件。

回答

2

一些事情。在Visual Studio中打包項目時,它會在構建包之前進行構建。只是運行CSPack不會構建,它只是做包裝。所以它可能是它包裝的目錄之一是空的。

另外值得一提的是,如果一個網站的名稱爲「Web」,那麼許多其他參數(包括物理目錄)會被忽略。爲了解決這個問題,你可以嘗試改變網站名稱,或者找出它真正從哪裏來。

+1

謝謝!我首先在本地發佈網站,然後運行cspack。我只需將網站名稱=「Web」更改爲其他內容即可。 – KevinUK