【问题标题】:Why is dotnet build not using the specified SDK on global.json?为什么 dotnet build 不使用 global.json 上的指定 SDK?
【发布时间】:2019-06-13 19:31:24
【问题描述】:

我有一个包含以下内容的 global.json

{
  "sdk": {
    "version": "2.2.300"
  }
}

这是 dotnet --list-sdks 的输出

2.0.3 [C:\Program Files\dotnet\sdk]
2.1.105 [C:\Program Files\dotnet\sdk]
2.1.300 [C:\Program Files\dotnet\sdk]
2.2.300 [C:\Program Files\dotnet\sdk]

这是 donet --list-runtimes 的输出

Microsoft.AspNetCore.All 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

但是,当我进行 dotnet build 时,出现以下错误

适用于 .NET Core 的 Microsoft (R) Build Engine 版本 16.1.76+g14b0a930a7 版权所有 (C) 微软公司。保留所有权利。

C:\程序 Files\dotnet\sdk\2.1.300\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): 错误:当前的 .NET SDK 不支持面向 .NET Core 2.2。 以 .NET Core 2.1 或更低版本为目标,或使用 .NET SDK 版本 支持 .NET Core 2.2。 [C:\solutionfolder\projectfolder\Project.csproj] C:\程序 Files\dotnet\sdk\2.1.300\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): 错误:当前的 .NET SDK 不支持面向 .NET Core 2.2。 以 .NET Core 2.1 或更低版本为目标,或使用 .NET SDK 版本 支持 .NET Core 2.2。 [C:\solutionfolder\projectfolder\Project.csproj]

构建失败。

C:\程序 Files\dotnet\sdk\2.1.300\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): 错误:当前的 .NET SDK 不支持面向 .NET Core 2.2。 以 .NET Core 2.1 或更低版本为目标,或使用 .NET SDK 版本 支持 .NET Core 2.2。 [C:\solutionfolder\otherprojectfolder\OtherProject.csproj] C:\程序 Files\dotnet\sdk\2.1.300\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): 错误:当前的 .NET SDK 不支持面向 .NET Core 2.2。 以 .NET Core 2.1 或更低版本为目标,或使用 .NET SDK 版本 支持 .NET Core 2.2。 [C:\solutionfolder\otherprojectfolder\OtherProject.csproj] 0 个警告 2 个错误

我需要帮助,这快把我逼疯了

【问题讨论】:

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


    【解决方案1】:

    好的,找到了解决办法,好像是这个环境系统变量

    MSBuildSDKsPath 指向 .NET Core 2.1.300 Sdks 文件夹,删除该变量解决了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-07
      • 1970-01-01
      • 2020-01-16
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多