繁体   English   中英

找不到指定的框架“Microsoft.AspNetCore.All”,版本“2.2.0”

[英]The specified framework 'Microsoft.AspNetCore.All', version '2.2.0' was not found

Dotnet --version说 2.2.402

dotnet --info

.NET Core SDK (reflecting any global.json):
 Version:   2.2.402
 Commit:    c7f2f96116

Runtime Environment:
 OS Name:     centos
 OS Version:  7
 OS Platform: Linux
 RID:         centos.7-x64
 Base Path:   /usr/share/dotnet/sdk/2.2.402/

Host (useful for support):
  Version: 2.2.8
  Commit:  b9aa1abc51

.NET Core SDKs installed:
  2.2.402 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.NETCore.App 2.2.8 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

我正在尝试在 linux 服务器上发布我的应用程序,该服务器在服务器上运行良好,直到我最后一次尝试使用以下命令更新服务器上的应用程序。

dotnet publish -c release -o ${API_PUBLISH_DIR}

构建过程引发以下错误

找不到任何兼容的框架版本找不到指定的框架“Microsoft.AspNetCore.All”,版本“2.2.0”。 - 检查应用程序依赖项并定位安装在以下位置的框架版本:/usr/share/dotnet/ - 安装 .NET 核心先决条件可能有助于解决此问题: https://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409 - The .NET 核心框架和 SDK 可以从以下位置安装: https://aka.ms/dotnet-download

更多错误细节是。

/usr/share/dotnet/sdk/NuGetFallbackFolder/microsoft.aspnetcore.mvc.razor.viewcompilation/2.2.0/build/netstandard2.0/Microsoft.AspNetCore.Mvc.ZE405C1DF83BD248A07FC9A9132739AED6Z.ViewCompilation : 命令 ""/usr/share/dotnet/dotnet" exec --runtimeconfig "/home/vng-dev/vng-web/vast-webapplication/vast_webapplication/WebAPI/bin/Release/netcoreapp2.2/WebAPI.runtimeconfig。 json" --depsfile "/home/vng-dev/vng-web/vast-webapplication/vast_webapplication/WebAPI/bin/Release/netcoreapp2.2/WebAPI.deps.json" "/usr/share/dotnet/sdk/NuGetFallbackFolder /microsoft.aspnetcore.mvc.razor.viewcompilation/2.2.0/build/netstandard2.0/netcoreapp2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.dll.22"@"obj/microsoft.aspnetcore/netcoreapp .mvc.razor.viewcompilation.rsp"" 退出,代码为 150。 [/home/vng-dev/vng-web/vast-webapplication/vast_webapplication/WebA PI/WebAPI.csproj]

我没有提到 AspNetCore.All 的 in.csproj 文件中的版本,它是这样的

<PackageReference Include="Microsoft.AspNetCore.All" />

还尝试用AspNetCore.All替换AspNetCore.App ,如下所示

<PackageReference Include="Microsoft.AspNetCore.App" />

这也无济于事

我也尝试安装 AspNetCore.MVC.Razor.ViewCompilation package 但它没有帮助

编辑:

  1. 还尝试一次更新 Microsoft.AspNetCore.App 和 Microsoft.AspNetCore.All 的版本。
  2. 尝试使用版本属性和不版本属性编译应用程序。
  3. 尝试更新解决方案中的所有项目 (.csproj) 文件。

对我来说,构建命令中的问题

我正在使用这个命令-> dotnet publish -c release -o ${API_PUBLISH_DIR}

更改了这个并添加了我正在构建它的平台

dotnet publish -c release -r linux-x64 -o ${API_PUBLISH_DIR}

最近对 .net 核心的自动更新搞砸了一些东西,无法弄清楚版本依赖关系在哪里。

您的项目有一个 Microsoft.AspNetCore.All 的参考,类似于下面给出的。 但是在删除 dotnet core 2.0 Microsoft.AspNetCore.All之后,您已经安装了 dotnet core 2.2.x。 Microsoft.NETCore.App 是更轻量级的版本,类似于 package。

我建议安装 dotnet core 2.0。 在这种情况下,您不需要更改您的项目。

<PackageReference Include="Microsoft.AspNetCore.All"/>
  • 在您的项目中添加 dotnet core 2.0 版本

< PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.6"/>

  • 同时添加属性组
<PropertyGroup> <PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest> </PropertyGroup>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM