.net core .Net核心项目找不到SDK,或者看起来是这样

.net core .Net核心项目找不到SDK,或者看起来是这样,.net-core,visual-studio-code,.net Core,Visual Studio Code,我正在使用中的说明尝试在.NETCore中构建我的第一个Azure功能项目 我的问题是我无法构建它: PS C:\work\proj> dotnet build .\proj.csproj Microsoft (R) Build Engine version 16.1.76+g14b0a930a7 for .NET Core Copyright (C) Microsoft Corporation. All rights reserved. c:\Program Files\dotnet\

我正在使用中的说明尝试在.NETCore中构建我的第一个Azure功能项目

我的问题是我无法构建它:

PS C:\work\proj> dotnet build .\proj.csproj
Microsoft (R) Build Engine version 16.1.76+g14b0a930a7 for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

c:\Program Files\dotnet\sdk\2.1.4\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(135,5): error : The current .NET SDK does not support targeting .NET Core 2.1.  Either target .NET Core 2.0 or lower, or use a version of the .NET SDK that supports .NET Core 2.1. [C:\work\proj\proj.csproj]

Build FAILED.

c:\Program Files\dotnet\sdk\2.1.4\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.TargetFrameworkInference.targets(135,5): error : The current .NET SDK does not support targeting .NET Core 2.1.  Either target .NET Core 2.0 or lower, or use a version of the .NET SDK that supports .NET Core 2.1. [C:\work\proj\proj.csproj]
    0 Warning(s)
    1 Error(s)

Time Elapsed 00:00:00.56
PS C:\work\proj>
以下是项目文件:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <AzureFunctionsVersion>v2</AzureFunctionsVersion>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="1.0.28" />
  </ItemGroup>
  <ItemGroup>
    <None Update="host.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
    <None Update="local.settings.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
      <CopyToPublishDirectory>Never</CopyToPublishDirectory>
    </None>
  </ItemGroup>
</Project>
我不明白为什么构建选择版本2.1.4。我做错了什么

编辑1

我很确定这是相关的。由于某种原因,我有一个环境变量
MSBuildSdksPath

PS C:\> $env:MSBuildSdksPath
c:\Program Files\dotnet\sdk\2.1.4\Sdks
PS C:\>
安装最新SDK时未对其进行更新。为什么?

当我在本地控制台中删除它时,生成成功。从环境变量中删除它是否安全

编辑2

PS C:\> dotnet --list-sdks
1.0.0-preview2-003131 [C:\Program Files\dotnet\sdk]
2.1.4 [C:\Program Files\dotnet\sdk]
2.1.403 [C:\Program Files\dotnet\sdk]
2.1.500 [C:\Program Files\dotnet\sdk]
2.1.502 [C:\Program Files\dotnet\sdk]
2.1.507 [C:\Program Files\dotnet\sdk]
2.1.700 [C:\Program Files\dotnet\sdk]
PS C:\>

您正在使用哪个版本的Visual Studio

我也有这个问题,如果您使用的是visual studio 2017,那么这个版本的.Net核心SDK将无法工作,您将需要使用这个版本


我刚刚删除了环境变量
MSBuildSdksPath


仍然不知道是什么添加了它,为什么,我是否只是通过移除它走出了困境。将很乐意接受更多信息回答。

尝试安装x32和x64。首先,我只安装了x64,这是错误的一个。。。这是我的错误,但也许你也犯了同样的错误:)

在3.0.0之前清理了以前的SDK之后,我遇到了这个问题。 我以前安装过x86版本。 我不想再次安装X86和X64版本。
我查看了环境变量,发现路径中有一个条目指向dotnet文件夹。我把它改为C:\Program Files\dotnet\现在我没事了。

dotnet--列出sdk的输出是什么??我正在使用Visual Studio代码。花了一天的时间试图弄清楚为什么我的机器一直尝试使用2.2 sdk版本。原来这就是原因
PS C:\> dotnet --list-sdks
1.0.0-preview2-003131 [C:\Program Files\dotnet\sdk]
2.1.4 [C:\Program Files\dotnet\sdk]
2.1.403 [C:\Program Files\dotnet\sdk]
2.1.500 [C:\Program Files\dotnet\sdk]
2.1.502 [C:\Program Files\dotnet\sdk]
2.1.507 [C:\Program Files\dotnet\sdk]
2.1.700 [C:\Program Files\dotnet\sdk]
PS C:\>