Asp.net Web部署无法修改目标上的文件“xxx.exe”,因为它已被外部进程锁定
我在Visual Studio中创建了一个新的ASP.NET核心Web应用程序.NET框架。我正在使用.NETFramework4.5.2。我右键单击该项目并选择“发布”,以使用Web Deploy将该项目发布到Azure。第一次尝试失败,因为缺少根元素或类似的内容。第二次尝试成功。但每次我尝试将项目发布到Azure中的应用程序站点时,都会出现以下错误: Web部署无法修改目标上的文件“xxx.exe”,因为它已被外部进程锁定 为什么会这样 我找不到解决这个问题的办法。。。是否无法以最简单/正常的发布方式将ASP.NET核心Web应用程序.NET Framework发布到Azure myproject.json如下所示:Asp.net Web部署无法修改目标上的文件“xxx.exe”,因为它已被外部进程锁定,asp.net,azure,asp.net-core,azure-web-app-service,webdeploy,Asp.net,Azure,Asp.net Core,Azure Web App Service,Webdeploy,我在Visual Studio中创建了一个新的ASP.NET核心Web应用程序.NET框架。我正在使用.NETFramework4.5.2。我右键单击该项目并选择“发布”,以使用Web Deploy将该项目发布到Azure。第一次尝试失败,因为缺少根元素或类似的内容。第二次尝试成功。但每次我尝试将项目发布到Azure中的应用程序站点时,都会出现以下错误: Web部署无法修改目标上的文件“xxx.exe”,因为它已被外部进程锁定 为什么会这样 我找不到解决这个问题的办法。。。是否无法以最简单/正常
{
"dependencies": {
"AutoMapper": "3.2.1",
"Dropbox.Api": "3.4.0",
"EnterpriseLibrary.TransientFaultHandling": "6.0.1304",
"EntityFramework": "6.1.3",
"Klarna.Net.Api": "4.0.0",
"Microsoft.AspNetCore.Mvc": "1.1.0",
"Microsoft.AspNetCore.Routing": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.Azure.DocumentDB": "1.10.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.Extensions.Logging": "1.1.0",
"Microsoft.Extensions.Logging.Console": "1.1.0",
"Microsoft.Extensions.Logging.Debug": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"PDFsharp": "1.32.3057",
"RavenDB.Client": "2.5.2910",
"SaasKit.Multitenancy": "1.1.4",
"Stripe.net": "6.0.1",
"IdentityServer4.AccessTokenValidation": "1.0.1-rc5",
"Newtonsoft.Json": "9.0.1",
"Microsoft.AspNetCore.Cors": "1.1.0",
"Microsoft.AspNetCore.Diagnostics": "1.1.0",
"Microsoft.AspNetCore.StaticFiles": "1.1.0",
"Swashbuckle": "6.0.0-beta902"
},
"tools": {
"Microsoft.AspNetCore.Server.IISIntegration.Tools": {
"version": "1.1.0-preview4-final",
"imports": "portable-net45+wp80+win8+wpa81+dnxcore50"
}
},
"frameworks": {
"net452": {
"dependencies": {
"Adocka.Common": {
"target": "project"
},
"Adocka.Core": {
"target": "project"
},
"Adocka.Core.Dto": {
"target": "project"
},
"Adocka.Dal": {
"target": "project"
}
}
}
},
"buildOptions": {
"emitEntryPoint": true,
"preserveCompilationContext": true,
"xmlDoc": true
},
"publishOptions": {
"include": [
"wwwroot",
"**/*.cshtml",
"appsettings.json",
"web.config"
]
},
"runtimeOptions": {
"configProperties": {
"System.GC.Server": true
}
},
"scripts": {
"postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
}
}
如果您的应用程序已经发布并且正在运行,则通常会发生这种情况,因此您会收到错误消息
在执行部署时,首先从Azure portal停止您的web应用程序,选择您的web应用程序并按停止按钮,执行部署并再次启动。您也可以使用powershell脚本自动化该过程 这真的需要吗??要停止有许多并发用户/访问者的生产web应用程序并发布新版本。。。听起来是个很糟糕的主意。。。微软已经解决了很多伟大的事情,开源,跨平台,自托管等等。。。但最后一步失败,您无法将完成的应用发布到azure。。。。?