[英]The current .NET SDK does not support targeting .NET Core 3.0 | 3.1 | 5.0 | 6.0
我剛剛下載了 .NET Core 3.0.100 的發布版本
它與我擁有的舊版本一起安裝:
當我嘗試為針對 .NET Core 3 ( <TargetFramework>netcoreapp3.0</TargetFramework>
) 的項目運行dotnet restore
時,我收到此錯誤
C:\Program Files\dotnet\sdk\2.2.202\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(137,5): error NETSDK1045: The current .NET SDK does not support targeting .NET Core 3.0. Either target .NET Core 2.2 or lower, or use a version of the .NET SDK that supports .NET Core 3.0.
我有一個 global.json 文件明確指出我需要3.0.100
SDK
{
"sdk": {
"version": "3.0.100"
}
}
我知道我可以編輯MSBuildSDKsPath
變量以指向3.0.100
SDK,它可以工作,但我不想這樣做,我的機器上有其他項目仍需要使用舊版本的 .NET Core .
有沒有辦法讓dotnet
工具使用 global.json 中所述的global.json
而不是MSBuildSDKsPath
中的那個?
編輯:我使用 Visual Studio Code
您還必須將您的visual studio
更新到支持的最低版本:
visual studio v16.3
visual studio v16.5
visual studio v16.6 latest preview
visual studio v17.0 latest preview
( https://dotnet.microsoft.com/download/dotnet-core/3.0 )
( https://dotnet.microsoft.com/download/dotnet-core/3.1 )
( https://dotnet.microsoft.com/download/dotnet/5.0 )
我在使用 .NET 6 的 Azure DevOps 中遇到了這個錯誤:
錯誤 NETSDK1045:當前 .NET SDK 不支持定位 .NET 6.0。 以 .NET 5.0 或更低版本為目標,或使用支持 Z303CB0EF9EDB9082AZD61BBBE5825D972AZ SDK 的 .NET 版本。
通過像這樣包含 SDK 來解決:
steps:
- task: UseDotNet@2
displayName: 'Install .NET 6 SDK'
inputs:
version: 6.0.x
performMultiLevelLookup: true
關於該問題的 Github 線程:
問題將通過下面的清單得到解決
環境變量(將其設置為根文件夾),例如。 C:/Program Files/DotNet 作為 PATH 變量 - 重新啟動以使更改受到影響
檢查 Visual Studio 版本
運行 dotnet --info 以檢查 SDK 是否已安裝
如果在環境變量中設置了 MSBuildSDKPath,則刪除它
嘗試使用 JetBrains Rider 構建解決方案時,我遇到了同樣的錯誤。 問題原來是 Rider 使用了錯誤的 msbuild.exe。 它是自動檢測 2017 版本而不是 2019。我必須在File | Settings | Build, Execution, Deployment | Toolset and Build
中的 JetBrains 設置中手動調整它。 File | Settings | Build, Execution, Deployment | Toolset and Build
File | Settings | Build, Execution, Deployment | Toolset and Build
。 在此處查看更多詳細信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.