簡體   English   中英

使用 Blazor Asp.NetCore 托管模板時獲取“NETSDK1045 當前 .NET SDK 不支持 .NET Core 3.0 作為目標”

[英]Getting “NETSDK1045 The current .NET SDK does not support .NET Core 3.0 as a target” when using Blazor Asp.NetCore hosted template

我已經安裝了 .NetCore 3.0 的預覽版並嘗試在 Visual Studio 2019 中運行 blazor 模板Blazor (ASP.NET Core hosted)

在此處輸入圖片說明

發生的錯誤如下:

NETSDK1045 當前的 .NET SDK 不支持 .NET Core 3.0 作為目標。 以 .NET Core 2.2 或更低版本為目標,或使用支持 .NET Core 3.0 的 .NET SDK 版本。

這幾天我不得不在許多不同的開發機器/容器上解決這個問題:最終,我發現了至少 6 個不同的原因可能導致這種錯誤:

  1. 缺少 .NET Core 3 SDK(x86 或 x64)
  2. VS2019 中未啟用 .NET Core SDK 預覽版支持
  3. VS2017 而不是 VS2019
  4. PATH 環境變量中的錯誤 SDK 路徑
  5. MSBuildSDKsPath 環境變量中的錯誤 SDK 路徑
  6. 項目的 global.json 文件中的 SDK 版本錯誤

這些場景的解決方法很容易理解,您基本上必須安裝正確的 SDK 或刪除“有問題的”SDK 引用。 但是,我已盡力在我博客上的這篇文章中記錄了所有這些內容

在此評論之后,我通過在 x64 版本之外安裝 x86 版本的 .NET Core 3.0 來解決該問題。 重新啟動 Visual Studio (2019) 后構建工作。

對我來說,解決方案是刪除路徑變量MSBuildSDKsPath - 因為探索預覽 sdks 的我在某個時候聲明了該變量來修復另一個 sdk 錯誤 - 似乎強制設置了使用的版本。 所以在我的情況下它被設置為 3.0.100 並在嘗試使用 3.1.300 時導致錯誤

我遇到了同樣的錯誤,並通過選中“使用 .NET Core SDK 的預覽(需要重新啟動)”選項來解決它。 打開工具 > 選項,然后根據您的 Visual Studio 版本嘗試查看“預覽功能”或“.Net Core”。 注意 VS 更新,他們可以禁用它。

這是一個非常令人討厭的解決方案,但至少它有效。 假設您已經為 3.0.100-rc1-014190 安裝了 SDK。 它按預期顯示在dotnet --list-sdks ,但似乎仍未被 Visual Studio 檢測到,並且在嘗試從 dotnet CLI 構建或測試任何內容時,您會遇到相同的 NETSDK1405 錯誤。

查看您的 dotnet SDK 安裝目錄(通常是C:\\Program Files\\dotnet\\sdk )。 您應該在那里看到您的預覽 SDK。 創建副本或重命名現有文件夾以刪除預覽版本后綴。 例如3.0.100-rc1-014190會變成3.0.100 ,像這樣:

在此處輸入圖片說明

這樣做使 .Net Core 3 預覽版支持最終在 VS2019 預覽版 4 和 dotnet CLI 中為我工作。

對我來說,這就像在 Visual Studio 2019 中啟用預覽一樣簡單。不幸的是,我認為大多數展示如何執行此操作的帖子都已過時。 我終於看到了這篇堆棧溢出帖子如何在 VS2019 中啟用 .NET Core 3 預覽版 SDK? 他們移動了復選框,但對我來說默認情況下它沒有打開。

這是一個令人沮喪的問題,在對 VS 進行所有更新后仍然無法安裝,我將其追蹤到環境變量。 嘗試刪除MSBuildSDKsPath並查看是否可以解決您的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM