[英]ASP.NET Core Migration from 2.1 -> 2.2 Issue with dependencies in Azure deployment
将ASP.NET Core 2.2应用程序部署到Azure时遇到Kudu问题。 该应用程序从2.1-> 2.2进行了迁移,并且在升级之前就已部署好。
我已将此文档用作参考
部署错误日志:
Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling ASP.NET Core Web Application deployment.
Restoring packages for D:\home\site\repository\Source\PlanetDiego.Core\PlanetDiego.Core.csproj...
D:\Program Files (x86)\dotnet\sdk\2.2.100\NuGet.targets(114,5): error : Could not find file 'D:\home\.nuget\newtonsoft.json\6.0.4\newtonsoft.json.6.0.4.nupkg'. [D:\home\site\repository\Source\PlanetDiego.sln]
Failed exitCode=1, command=dotnet restore "D:\home\site\repository\Source\PlanetDiego.sln"
An error has occurred during web site deployment.
\r\nD:\Program Files (x86)\SiteExtensions\Kudu\79.11121.3655\bin\Scripts\starter.cmd "D:\home\site\deployments\tools\deploy.cmd"
有趣的是,每次部署尝试都会返回不同的错误依赖性错误:
Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling ASP.NET Core Web Application deployment.
Restoring packages for D:\home\site\repository\Source\PlanetDiego.Core\PlanetDiego.Core.csproj...
D:\Program Files (x86)\dotnet\sdk\2.2.100\NuGet.targets(114,5): error : Could not find file 'D:\home\.nuget\awssdk.core\3.3.0\awssdk.core.3.3.0.nupkg'. [D:\home\site\repository\Source\PlanetDiego.sln]
Failed exitCode=1, command=dotnet restore "D:\home\site\repository\Source\PlanetDiego.sln"
An error has occurred during web site deployment.
\r\nD:\Program Files (x86)\SiteExtensions\Kudu\79.11121.3655\bin\Scripts\starter.cmd "D:\home\site\deployments\tools\deploy.cmd"
csproj文件。 如您所见,不依赖于newtonsoft.json.6.0.4.nupkg或awssdk.core.3.3.0.nupkg。 指定的版本分别是12.0.1和3.3.29。 我尝试转到Azure的Kudu控制台并删除D:\\ home \\ site \\ deployments \\ tools文件夹中的deploy.cmd和deploymentCacheKey。 不幸的是没有效果。
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<AssemblyName>PlanetDiego.Core</AssemblyName>
<PackageId>PlanetDiego.Core</PackageId>
<LangVersion>latest</LangVersion>
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute>
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AWSSDK.Core" Version="3.3.29.13" />
<PackageReference Include="AWSSDK.S3" Version="3.3.31" />
<PackageReference Include="AWSSDK.SimpleEmail" Version="3.3.7.15" />
<PackageReference Include="Microsoft.Extensions.Configuration" Version="2.2.0" />
<PackageReference Include="Microsoft.Extensions.Options" Version="2.2.0" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.1" />
<PackageReference Include="TweetinviAPI" Version="4.0.0" />
</ItemGroup>
</Project>
尝试删除D:\\home\\.nuget\\
目录,然后重新运行还原/部署。
看来我能够在Visual Studio Code中使用目标框架2.1和Azure工具扩展来部署该应用程序。 dotnet publish -c Relase
,然后右键单击bin/Release/netcoreapp2.1/publish
文件夹并部署到Web App。
SDK 2.2是新的 ,也许现在在Azure上已被破坏。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.