gpt4 book ai didi

asp.net - 带有 Hangfire 的 TeamCity MSDeploy .NET 应用程序失败

转载 作者:行者123 更新时间:2023-12-02 15:20:06 28 4
gpt4 key购买 nike

我正在尝试使用 Hangfire。这是我的问题,当我尝试发布到 azure 时,发布失败,因为 DLL 正在被另一个进程使用。

VSMSDeploy] C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Web\Microsoft.Web.Publishing.targets(4276, 5):错误 ERROR_FILE_IN_USE:Web 部署任务失败。 (Web 部署无法修改目标上的文件“Takenet.WebApi.dll”,因为它已被外部进程锁定。为了使发布操作成功,您可能需要重新启动应用程序以释放锁定,或者在下次发布尝试时使用 .Net 应用程序的 AppOffline 规则处理程序。 了解更多信息:http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE .)

我使用了 AppOffline 规则,将 App_Offline.htm 添加到我的 web 应用程序的根目录中。文件到达后,IIS 将停止我的应用程序的工作进程并卸载正在使用的所有文件,但发布仍然失败,看起来发布速度比关闭速度更快 =/

有人可以帮忙吗?

最佳答案

首先,我在 PublishProfile 中添加了 AppOffline 规则,但看起来只有使用 Visual Studio =/进行部署时才会使用此规则,因此我必须将此规则应用于团队城市。

在命令行/构建服务器上设置这些属性

当您调用 msbuild.exe 时,您可以像传递任何其他 MSBuild 属性一样传递此属性。使用以下语法,

/p:EnableMSDeployAppOffline=true/p:MSDeployUseChecksum=true

关于asp.net - 带有 Hangfire 的 TeamCity MSDeploy .NET 应用程序失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33669482/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com