WebDeploy使用msbuild(TFS)错误:文件正在使用中

时间:2014-05-07 13:24:37

标签: tfs msbuild web-deployment

我有标准的TFS构建定义,以及用于Web部署的以下msbuild参数:

/p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish  /p:MSDeployPublishMethod=InProc  /p:CreatePackageOnPublish=True  /p:DeployIisAppPath="[IIS APP PATH]" /p:MsDeployServiceUrl=localhost

除非我在应用程序中添加了一个锁定的“logs”文件夹,否则这种方法还可以。现在msbuild无法删除此文件夹,因为它始终在使用中。 这是错误:

  

C:\ Program Files   (86)\的MSBuild \微软\ VisualStudio的\ 11.0 \网络\ Microsoft.Web.Publishing.targets   (4193):Web部署任务失败。 (文件'logs'正在使用中。学习   更多:   http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE。)

我想必须有一种方法可以在部署之前回收webapp,从而释放文件夹。或者也许不清理源位置。请指教。

由于

1 个答案:

答案 0 :(得分:1)

最终我找到了上述问题的解决方案:

/p:DeployOnBuild=True /p:DeployTarget=MsDeployPublish  /p:SkipExtraFilesOnServer=True /p:MSDeployPublishMethod=InProc  /p:CreatePackageOnPublish=True  /p:recycleApp="[APP NAME]"  /p:DeployIisAppPath="[APP NAME]" /p:MsDeployServiceUrl=localhost

参数 SkipExtraFilesOnServer 不会执行清理目标文件夹,因此日志文件夹不受影响。