MSBuild命令行与Visual Studio发布

我有多个项目的解决方案,其中一个是我想要创建部署包的Web应用程序。 使用Visual Studio发布时,它可以发布和部署,而不会有任何问题。
但是,由于某些要求,我需要使用命令行来发布它,这是我遇到问题的地方。 即使在命令行中单独发布也能正常工作,但是当我尝试部署在命令行中创建的程序包时,出现此错误:

当'setAcl'提供程序与物理路径一起使用时,必须指定'setAclUser'设置的值。

我的msbuild命令如下所示:

msbuild Solution.sln / p:DeployOnBuild = true / p:PublishProfile = Debug

我注意到的一个差异是,在发布解决方案时,PackageTemp文件夹是在不同的项目中创建的,因此在部署时会打印到cmd的不同路径。 随着VS发布,他们看起来像

“默认网站/ MySite / ...”

但通过命令行发布,它们看起来像这样

“C: MySolution Project(只有一个库项目,不是我想发布的项目) obj Debug Package PackageTemp ...”

谢谢你的帮助

编辑:创建.zip包几乎是相同的,除了archive.xml有一些不同的值,我怀疑这是问题,但不幸的是,我无法弄清楚这个文件实际代表什么。

链接地址: http://www.djcxy.com/p/81645.html

上一篇: MSBuild command line vs. Visual Studio publish

下一篇: MsBuild not finding publish profile