我有一个包含多个项目的解决方案,其中一个是我想要创建部署包的Web应用程序。使用Visual Studio发布时,它会毫无问题地发布和部署 但是,由于某些要求,我需要使用命令行发布它,这是我遇到问题的地方。单独发布即使在命令行中也能正常工作,但是当我尝试部署在命令行中创建的包时,我收到此错误:
当设置时,必须指定'setAclUser'设置的值 'setAcl'提供程序与物理路径一起使用。
我的msbuild命令如下所示:
msbuild Solution.sln / p:DeployOnBuild = true / p:PublishProfile = Debug
我注意到的一个差异是,在发布解决方案时,PackageTemp文件夹是在不同的项目中创建的,因此在部署时会打印到cmd的不同路径。使用VS发布,它们看起来像
“默认网站/ MySite /...”
但是使用命令行发布它们看起来像这样
“C:\ MySolution \ Project(只是一个库项目,而不是我想要的那个 发布)\ OBJ \调试\包\ PackageTemp ...“
感谢您的帮助
编辑:创建的.zip包几乎相同,除了archive.xml有一些不同的值,我怀疑这是问题,但不幸的是我无法理解这个文件实际代表什么。