【问题标题】:The specified framework 'Microsoft.AspNetCore.App', version '2.1.0' was not found找不到指定的框架“Microsoft.AspNetCore.App”,版本“2.1.0”
【发布时间】:2018-11-08 16:18:30
【问题描述】:

我尝试将我的网络应用从 .net core 2.0 升级到 .net core 2.1 我做到了:

1) 安装 Visual Studio Professional 2017 预览版 15.8.0 预览版 1.1
2) 从这里安装 .net core 2.1.3 RC1 SDK:https://www.microsoft.com/net/download/dotnet-core/sdk-2.1.300-rc1
3) 将我所有的 aspnetcore nuget 包更新到最新版本。

完成这两件事后,当我开始我的项目时,我会看到这个屏幕:

HTTP 错误 502.5 - 进程失败 此问题的常见原因:

The application process failed to start
The application process started but then stopped
The application process started but failed to listen on the configured port 

故障排除步骤:

Check the system event log for error messages
Enable logging the application process' stdout messages
Attach a debugger to the application process and inspect 

欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?LinkID=808681

在我的 ASP.NET Core Web 服务器的输出窗口中,我得到了这个:

The specified framework 'Microsoft.AspNetCore.App', version '2.1.0' was not found.
  - Check application dependencies and target a framework version installed at:
      C:\Program Files\dotnet\
  - Installing .NET Core prerequisites might help resolve this problem:
      http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
  - The .NET Core framework and SDK can be installed from:
      https://aka.ms/dotnet-download
  - The following versions are installed:
      2.1.0-preview2-final at [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
      2.1.0-rc1-final at [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
It was not possible to find any compatible framework version
The specified framework 'Microsoft.AspNetCore.App', version '2.1.0' was not found.
  - Check application dependencies and target a framework version installed at:
      C:\Program Files\dotnet\
  - Installing .NET Core prerequisites might help resolve this problem:
      http://go.microsoft.com/fwlink/?LinkID=798306&clcid=0x409
  - The .NET Core framework and SDK can be installed from:
      https://aka.ms/dotnet-download
  - The following versions are installed:
      2.1.0-preview2-final at [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
      2.1.0-rc1-final at [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]

【问题讨论】:

  • 显然他们在发布sdk之前发布了依赖sdk的nuget包。令人沮丧!
  • @GeekyMonkey 什么会让他们做这样的事情? ??????
  • .NET SDK 2.1.300 现已推出:microsoft.com/net/download/windows 请安装它,应该可以解决这个问题。

标签: asp.net-core .net-core asp.net-core-2.0


【解决方案1】:

.NET Core 2.1 SDK 将于本周发布。如果您不能等到那时,请将其添加到您的 *.csproj

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <RestoreAdditionalProjectSources>
        https://dotnetfeed.blob.core.windows.net/orchestrated-release-2-1/20180515-07/final/index.json
    </RestoreAdditionalProjectSources>
  </PropertyGroup>
  
  ....
</Project>

并从以下地址下载最终的 SDK:https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.300/dotnet-sdk-2.1.300-win-x64.exe

更多详情请访问:https://github.com/aspnet/Home/wiki/2.1.0-Early-Access-Downloads

【讨论】:

    【解决方案2】:

    通过更新所有 NuGet 包,您似乎已从您开始使用的 RC 版本(安装在您的系统上)升级到当前发布的 RTM 版本(因此已经在 NuGet 上可用但未安装在您的系统上)。

    Microsoft.AspNetCore.App NuGet 包应该在没有版本的情况下被引用,以便安装的工具可以选择合适的版本。

    更新您的 .csproj 文件以删除 Version 属性并仅通过以下方式引用该包:

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

    【讨论】:

    • “应该在没有版本的情况下引用”我不同意这种说法。此外,您的建议不起作用,因为 Microsoft.AspNetCore.App NuGet 包不包含包容性下限。我的建议是等到最终的 .NET SDK 2.1.300 安装程序可用才能安装最新的 ASP.NET Core 2.1 位。
    • Web SDK (Microsoft.NET.Sdk.Web) 将接管为 2.1 中的包参考选择合适的版本。在最近的更改中,他们添加了阻止 NuGet 对话框提供版本更新的标志。它的行为类似于在幕后引用的 Microsoft.NETCore.App 包,但 web sdk 需要让用户以这种方式在 M…AspNetCore.AppM…AspNetCore.All 包之间进行选择
    • @MagnusJohansson,我已经安装了 2.1.300 - 但它仍然会导致主题中描述的情况。然而,马丁的解决方案成功了。
    • 2018 年 7 月 8 日更新。github.com/aspnet/Docs/issues/6430“在审查了客户反馈和大量设计讨论后,我们认为隐式包版本造成的混乱多于帮助。我们计划改变路线并返回建议在 Microsoft.AspNetCore.App/All 的 PackageReference 上使用 Version 属性。"
    • 是的,并且计划在 2.1.3 中进行更改,但他们再次退出,试图在 2.2 中重新考虑它
    【解决方案3】:

    .NET Core SDK 2.1.300 现已推出:https://www.microsoft.com/net/download/windows 安装它,这解决了我的问题。

    【讨论】:

      【解决方案4】:

      看起来现在可以在 Chocolatey 上购买了 https://chocolatey.org/packages/dotnetcore-sdk/2.1.300

      还没有在正常的 dotnet 分发站点上。疯了。

      【讨论】:

        【解决方案5】:
        1. 卸载以前的版本
        2. 下载并安装 2.1 版 sdk
        3. 整个过程后重启你的电脑

        它应该可以工作。

        【讨论】:

          【解决方案6】:

          我打开 Visual Studio 安装程序,进入 Individual Components,选择 .NET Core 2.1 Runtime (LTS),然后安装它。

          解决了我的问题。

          【讨论】:

            猜你喜欢
            • 2018-11-26
            • 1970-01-01
            • 2019-10-06
            • 2020-08-24
            • 2021-03-22
            • 2022-08-17
            • 1970-01-01
            • 1970-01-01
            • 2021-07-09
            相关资源
            最近更新 更多