visual-studio - 这个 cspack 命令行有什么问题?

标签 visual-studio azure cspack

如果我通过 Visual Studio 创建 Azure 包,那么它可以正常工作并在 Azure 上运行。如果我运行以下 cmd,则创建的 .cspkg 为 8,032KB,而不是通过 Visual Studio 创建的 14,785KB。

命令行生成的 .cspkg 应大于通过 Visual Studio 生成的文件,因为 afterbuild 事件会创建额外的 css/javascript 文件。

我想通过命令行运行它,因为当我在本地部署项目时,它会在构建后事件中压缩/缩小,并且我无法弄清楚如何在该过程之后创建 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 文件。

最佳答案

有几件事。当您在 Visual Studio 中打包项目时,它会在打包之前进行构建。仅运行 CSPack 并不执行构建,它仅执行打包。所以可能是它打包的目录之一是空的。

还值得注意的是,如果站点的名称为“Web”,则许多其他参数(包括物理目录)将被忽略。要解决这个问题,您可以尝试更改网站名称,或者找出它真正从哪里提取内容。

关于visual-studio - 这个 cspack 命令行有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7323098/

相关文章:

visual-studio-2012 - Azure 2.5 SDK 升级导致 CSPack 失败

xml - 错误 : Can only generate one of classes or datasets

c++ - 如何在 Visual Studio 中启用 CUDA 项目的单独编译

azure - Windows Azure 存储(Blob、表、队列)是否针对 Windows Azure 角色的访问进行了优化?

azure - 一个 Azure WebRole 中的多个站点

azure - CSPack 将带有空格的目录名称编码为 %20

c++ - 先前声明的变量和常量的智能感知

c# - 在VS 2008中添加dll

azure - 从现有 VHD 创建虚拟机 : Preview portal