Chcę utworzyć projekt biblioteki klas z Target Framework .NET Standard 2.0.
Zaktualizowałem moją Visual Studio 2017
wersję do wersji, 15.3
a także w instalatorze Visual Studio sprawdziłem .NET Framework 4.7 SDK
i.NET Framework 4.7 targeting pack
ręcznie i zainstalowałem je.
Nadal nie ma .NET Standard 2.0
opcji w polu kombi Platforma docelowa w oknie Projekt / Aplikacja. Więc zmieniłem tag TargetFramework w .csproj
pliku ręcznie na netstandard2.0
, ale po próbie kompilacji otrzymuję ten błąd:
Bieżący zestaw .NET SDK nie obsługuje platformy .NET Standard 2.0. Docelowy .NET Standard 1.6 lub starszy albo użyj wersji .NET SDK, która obsługuje .NET Standard 2.0.
global.json
plik przypinający zestaw .NET Core SDK do wersji 1.x? Czy oddzielnie zainstalowano zestaw .NET Core 2.0 SDK? ( Spodziewałbym się, że zostanie dołączony do VS, ale i tak nie zaszkodzi zainstalować go.)Odpowiedzi:
Wygląda na to, że zainstalowanie aktualizacji VS2017 dla tej konkretnej wersji nie spowodowało również zainstalowania zestawu SDK .NET Core 2.0. Możesz to pobrać tutaj .
Aby sprawdzić, którą wersję pakietu SDK masz już zainstalowaną, uruchom
z wiersza poleceń. Zwróć uwagę, że jeśli
global.json
plik znajduje się w Twoim bieżącym katalogu roboczym lub w dowolnym katalogu nadrzędnym, zastąpi to uruchomioną wersję SDK. (Jest to przydatne, jeśli na przykład chcesz wymusić określoną wersję projektu).Sądząc po komentarzach, niektóre wersje VS2017 aktualizacjach zrobić zainstalować .NET rdzenia SDK. Podejrzewam, że z czasem może się nieco różnić.
źródło
podczas gdy powyższe odpowiedzi nie rozwiązały mojego problemu. W końcu rozwiązałem to, przechodząc do tego linku https://www.microsoft.com/net/download/visual-studio-sdks i pobierając wymagany pakiet SDK dla programu Visual Studio . To było naprawdę zagmatwane i nie rozumiem dlaczego, ale to rozwiązało mój problem
źródło
Dla mnie rozwiązaniem była zmiana wersji w
global.json
aby odzwierciedlała zainstalowaną.Jak powiedzieli inni, wersję można znaleźć uruchomioną
dotnet --info
w cmdTo:
Stał się:
Możesz również utworzyć plik global.json, uruchamiając
u podstaw projektu
źródło
global.json
plik, gdyby istniał?global.json
byłby obok pliku rozwiązania. Zwykle dołączałem jako element rozwiązania do samego rozwiązania. W swoich eksperymentach odkryłem, że bez zamykania i ponownego ładowania rozwiązania zmiana wersji wglobal.json
może prowadzić do dziwnych błędów kompilacji. Mój komentarz dotyczy VS2018 w wersji 15.9.2 z .NET Core SDK 2.2.100..NET Core SDK looks for a global.json file in the current working directory ... or one of its parent directories
. Więc jak plik typu dziedziczenia.Dzieje się tak czasami, gdy próbuję otworzyć moje stare projekty, co pomaga mi zmienić ramy docelowe projektów. Przejdź do Project -> projectname Properties ... i zmień platformę docelową na zainstalowaną.
źródło
To zadziałało dla mnie
Użyj instalacji programu Visual Studio
Na karcie „Obciążenia” zaznacz „Tworzenie międzyplatformowe .Net Core” i kliknij „Modyfikuj”
Nie zapomnij zaznaczyć „Narzędzia programistyczne .NET Core 2.0” w menu po lewej stronie.
Źródło
Uwaga
Zainstalowałem Asp Net Core wcześniej, ale nie pojawił się na moim Visual Studio, zaraz po zainstalowaniu za pomocą instalacji Visual Studio pojawił się u mnie.
źródło
Kiedy uaktualniłem Visual Studio do wersji 15.5.1, .Net Core SDK został uaktualniony do wersji 2.X, więc ten błąd zniknął. Kiedy biegnę
dotnet --info
, widzę teraz:źródło
Miałem to właśnie z 15.8.3 po odinstalowaniu niektórych zestawów SDK w wersji zapoznawczej .NET Core 1.x, moja aplikacja nie mogła się skompilować i pokazała błąd.
Naprawiono to, instalując najnowszą wersję zestawu SDK x86, mimo że korzystam z systemu Windows 10 x64.
Przypuszczam, że dzieje się tak, ponieważ VS 2017 nadal jest programem x86 i chociaż programy działają jako x64, kompilator szukał odpowiedniego zestawu SDK x86
źródło
Miałem instalacje zarówno programu Visual Studio 2019, jak i 2017. Próbowałem oddzielnie zainstalować zestaw .NET Core 2.X SDK dla VS2017, ale bez powodzenia.
Problem w tym , że mam zainstalowany SDK .NET Core 3.0 jako domyślną wersję sdk , której VS2017 nie lubi.
Moje rozwiązanie polegało na zmianie wersji SDK dla konkretnego projektu.
Teraz
dotnet
użyje określonej wersji zestawu SDK dla tego rozwiązania.Nie znalazłem sposobu na zrobienie tego w całym systemie bez zepsucia moich projektów 3.0.
źródło
Właściwie to wydarzyło się dla mnie odwrotnie niż inne odpowiedzi.
I tak zainstalować najnowszy .NET SDK rdzenia zanim pojawił się problem (3.0.0-preview2 w moim przypadku) nie mając ostatnią wersję Visual Studio (nie jestem pewien, czy to byłoby żadnej różnicy).
Tak więc rozwiązaniem było po prostu odinstalowanie tego najnowszego zestawu .NET Core SDK . (Nie jest to idealne rozwiązanie, jeśli tego potrzebujesz, więc możesz rozważyć uaktualnienie programu Visual Studio do najnowszej wersji, ale przynajmniej to rozwiązało bieżący problem).
źródło
Właśnie przeszedłem przez ten problem. W moim przypadku miałem działający skrypt
Dzisiaj zacząłem otrzymywać dokładnie ten błąd. Ale teraz pamiętam, jak zainstalowałem VS2019 dzień wcześniej. Wygląda na to, że zmieniło to coś w VS2017. Poszedłem do aktualizacji VS2017, zainstalowałem najnowszą wersję / aktualizację i naprawiłem to z powrotem.
źródło
Miałem ten sam problem i mam najnowszą wersję Microsoft Visual Studio Community 2017 w wersji 15.7.3
Właśnie pobrałem najnowszy SDK 2.1 i nie mam już problemów z kierowaniem. https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.301-windows-x64-installer
Informacje: Microsoft Visual Studio Community 2017, wersja 15.7.3 VisualStudio.15.Release / 15.7.3 + 27703.2026 Microsoft .NET Framework, wersja 4.7.03056
Wersja zainstalowana: Społeczność
Narzędzia języka C # 2.8.3-beta6-62923-07. Commit Hash: 7aafab561e449da50712e16c9e81742b8e7a2969 składniki C # używane w środowisku IDE. W zależności od typu projektu i ustawień można użyć innej wersji kompilatora.
Common Azure Tools 1.10 Udostępnia typowe usługi do użytku przez Azure Mobile Services i Microsoft Azure Tools.
Menedżer pakietów NuGet 4.6.0 Menedżer pakietów NuGet w programie Visual Studio. Aby uzyskać więcej informacji o NuGet, odwiedź http://docs.nuget.org/ .
ProjectServicesPackage Extension 1.0 ProjectServicesPackage Rozszerzenie Visual Studio Szczegółowe informacje
Rozszerzenie ResourcePackage 1.0 Rozszerzenie ResourcePackage Visual Studio Szczegółowe informacje
Visual Basic Tools 2.8.3-beta6-62923-07. Commit Hash: 7aafab561e449da50712e16c9e81742b8e7a2969 Komponenty Visual Basic używane w środowisku IDE. W zależności od typu projektu i ustawień można użyć innej wersji kompilatora.
Visual Studio Code Debug Adapter Host Package 1.0 Interop Layer do hostowania adapterów debugowania Visual Studio Code w programie Visual Studio
Visual Studio Tools for Unity 3.7.0.1 Visual Studio Tools for Unity
źródło
Upewnij się, że pobierasz pakiet SDK x86 zamiast tylko zestawu SDK x64 dla programu Visual Studio.
źródło
Miałem ten sam problem, co bieżący zestaw .NET SDK nie obsługuje platformy .NET Core 3.1. Docelowy .NET Core 1.1 lub niższy albo użyj wersji zestawu .NET SDK, która obsługuje .NET Core 3.1
1) Upewnij się, że na komputerze jest zainstalowany zestaw .Net core SDK. Pobierz .NET !
2) ustaw zmienne środowiskowe PATH jak poniżej Path
źródło
Miałem ten problem podczas próby zbudowania mojego rozwiązania w TFS. Używaliśmy zadania "dot net Publishing". Korzystanie z MSBuild przełamało dla nas lody.
źródło