.NET .NET 2.1 को वर्तमान .NET SDK लक्ष्यीकरण का समर्थन नहीं करता है। या तो .NET Core 2.0 को लक्षित करें या .NET .NET 2.1 का समर्थन करने वाले .NET SDK का उपयोग करें


81

दृश्य स्टूडियो 2017 v 15.6.0 (पूर्वावलोकन 7.0) के पेशेवर संस्करण में अपग्रेड करने की कोशिश की है

और स्थापित किया गया aspnetcore-runtime-2.1.0-preview1-final-win-x64 और .net core SDK 2.1.4।

जब मैंने एक नया वेब एप्लिकेशन बनाया तो मुझे यह कहते हुए एक त्रुटि हुई

".NET .NET 2.1 को वर्तमान .NET SDK लक्ष्यीकरण का समर्थन नहीं करता है। या तो .NET Core 2.0 या उससे कम लक्ष्य करें, या .NET Core 2.1 का समर्थन करने वाले .NET SDK के एक संस्करण का उपयोग करें।"

जब मैं एक मौजूदा प्रोजेक्ट बनाने की कोशिश करता हूं तो मुझे एक त्रुटि मिलती है

".NET .NET 2.1 को वर्तमान .NET SDK लक्ष्यीकरण का समर्थन नहीं करता है। या तो .NET Core 2.0 या उससे कम लक्ष्य करें, या .NET Core 2.1 का समर्थन करने वाले .NET SDK के एक संस्करण का उपयोग करें।"

मैं अपने लक्ष्य ढांचे में ".net core 2.1" नहीं देखता

मेरे पास मेरे कंप्यूटर में वैश्विक। Json फ़ाइल नहीं है

जब मैं डॉटनेट --info की कोशिश करता हूं, तो मुझे यह मिलता है

c: \ source \ dnacloud \ testapp> dotnet --info .NET कमांड लाइन टूल्स (2.1.100)

Product Information:
Version: 2.1.100
Commit SHA-1 hash: b9e74c6

Runtime Environment:
OS Name: Windows
OS Version: 10.0.16299
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\2.1.100\

Microsoft .NET Core Shared Framework Host

Version : 2.0.5
Build : 17373eb129b3b05aa18ece963f8795d65ef8ea54

1
यह खून बह रहा है धार सामान, कोई भी 15.x.0 वी.एस. रिलीज डिजाइन से काफी टूट गया है। वर्कअराउंड सही गंध नहीं करता है। मदद का उपयोग करने के लिए बहुत महत्वपूर्ण है> फ़ीडबैक भेजें> समस्या की रिपोर्ट करें या यह जल्द ही ठीक नहीं होगा।
हंस पासेंट

7
"डिजाइन से टूट गया" == खराब डिजाइन। मुझे लगता है कि एमएस तेजी से तैनात करना चाहता है, लेकिन विकास परिदृश्य के लिए वे निर्भरता नरक वे 90 के दशक में लिनक्स गुठली पर कोड बनाने की कोशिश करने की याद दिलाता है ...
जेरेमी होलोवाक्स

जवाबों:


69

यहां समस्या यह है कि Microsoft ने बहुत सारे लोगों को भ्रमित किया कि वे अपने .NET कोर एसडीके को कैसे गिने।

मूल पोस्टर संदेश में C: \ Program Files \ dotnet \ sdk \ 2.1.100 \ DOES .NET कोर 2.1 रनटाइम का प्रतिनिधित्व नहीं करता है (लेकिन आपको लगता है कि यह करता है)।

मैं इस पोस्ट पर आया था । वर्तमान .NET SDK डेवलपर community.visualstudio.com पर .NET Core 2.1 को लक्षित करने का समर्थन नहीं करता है जहाँ Microsoft समर्थन व्यक्ति भ्रम की व्याख्या करता है:

"आपकी प्रतिक्रिया के लिए धन्यवाद! हमने निर्धारित किया है कि यह समस्या बग नहीं है। .NET कोर 2.1 समर्थन वाला पहला एसडीके 2.1.300-पूर्वावलोकन 1 है। हम जानते हैं कि संस्करणकरण भ्रमित है जो 2.1.300 में शुरू हो रहा है।" SDK के प्रमुख.इनर संस्करणों को अब रनटाइम के प्रमुख .minor संस्करणों के साथ संरेखित किया जाएगा। "

इसलिए ... एसडीके के माध्यम से निर्माण के लिए .NET कोर 2.1 समर्थन प्राप्त करने के लिए आपको संस्करण 2.1.300 के साथ एसडीके को कम से कम स्थापित करने की आवश्यकता है (2.1.2 के बाद से .NET कोर 2.1 नहीं है) ... हाँ, भ्रमित। इस पर कुछ खोए हुए समय के लिए धन्यवाद Microsoft।


22
"हमने निर्धारित किया है कि यह मुद्दा बग नहीं है" मैं इसे एक बग कहूंगा।
स्क्रिप्ट किटी

2
"हमने निर्धारित किया है कि यह शर्मनाक है, इसलिए हम इसे बग नहीं कहने जा रहे हैं।"
क्रिस बी।

- यह बुरा लग रहा है।
क्रिश्चियन

29

2.2.100-प्रीव्यू 3-009430 को स्थापित करने और फिर विज़ुअल स्टूडियो 15.9.2 में अपडेट करने के बाद मेरे साथ ऐसा हुआ।

मैंने ".NET कोर एसडीके के उपयोग पूर्वावलोकन" विकल्प को सक्षम करके हल किया।

  1. पर जाएं: उपकरण> विकल्प> परियोजनाएं और समाधान> .NET कोर

  2. ".NET कोर एसडीके के उपयोग पूर्वावलोकन" बॉक्स की जांच करें

  3. Visual Studio को पुनरारंभ करें और समाधान का पुनर्निर्माण करें।

वी.एस. पूर्वावलोकन विकल्प


एक बिल्ड सर्वर पर क्या है जिसमें केवल "बिल्ड टूल" स्थापित है? वहां कोई GUI नहीं है।
वसंत ऋतु

1
NETSDK1045 के लिए कार्य किया गया। वर्तमान .NET SDK .NET कोर 3.0 को लक्षित करने का समर्थन नहीं करता है। जब ब्लेज़र की कोशिश कर रहा है
जे

2
वीएस v.16.1 में ऐसा कोई विकल्प नहीं है
यूजीन

9
इसे उपकरण> विकल्प> पर्यावरण> पूर्वावलोकन सुविधाओं
लुडोवो

18

स्थापना .NET Core SDK 2.1.300-preview2ने मेरे लिए चाल चली:

अद्यतन: हाल ही में, हाल ही में एक नया संस्करण जारी किया गया है। आप 2.2.0-पूर्वावलोकन 1 (जिसमें ASP.NET 2.2.0-पूर्वावलोकन 1 शामिल है) के लिए नया .NET कोर एसडीके डाउनलोड कर सकते हैं

सामान्य रूप से इस तरह की त्रुटि मिलने पर यह उत्तर भी देखें :

वर्तमान .NET SDK .NET Core 2.X को लक्षित करने का समर्थन नहीं करता है


मेरा समाधान नहीं बनाता है, लेकिन अब IIS एक्सप्रेस भौतिक त्रुटि 'MACHINE / WEBROOT / APPHOST / ORCHARDCORE.CMS.WEB' को भौतिक रूट 'C: \ Projects \ OrchardCore \ parc OrchardCore.Cms.Web \' के साथ प्रोसेस शुरू करने में विफल रहा है। कमांडलाइन के साथ: C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Community \ Common7 \ IDE \ Extensions \ Microsoft \ Web Tools \ ProjectSystem \ VSIISExeLauncher.exe -argFile - C: \ Users \ daves \ AppData \ Local \ Local \ Temp \ tmp221C.tmp "', ErrorCode =' 0x80004005: 0.
डेविड सोपको

@DavidSopko सबसे अधिक संभावना है कि आपको पर्यावरण चर का ध्यान रखने की आवश्यकता है LAUNCHER_PATH और LAUNCHER_ARGS blog.lextudio.com/ ...
दिमित्री पावलोव

13

मैंने समस्या का समाधान किया। कारण यह था कि मैंने स्थापित किया था

  • aspnetcore-runtime-2.1.0-preview1-final-win-x64 तथा
  • .net core SDK 2.1.4-x64 संस्करण।
  • स्थापना में sdk फ़ाइलों को रखा गया c:\Program Files\dotnet
  • लेकिन VS2017 32bit sdk फाइलों की तलाश में था c:\Program Files(x86)\dotnet

इसे हल करने के लिए i

  • sdk और aspnetcore रनटाइम का x86 संस्करण स्थापित किया,

  • नए इंस्टॉलेशन पथ को इंगित करने के लिए MSBuildSDKsPath पर्यावरण चर सेट करें।

  • नियंत्रण कक्ष से सभी अप्रचलित एसडीके को हटा दिया गया

VS2017 अद्यतन 3 'Microsoft.NET.Sdk.Web' प्रश्न को इस समस्या को हल करने में मदद नहीं मिली।


मैं एक ही मुद्दे का सामना कर रहा हूं और पिछले महीने शायद एस्पनेटकोर-रनटाइम-2.1.0-प्रिव्यू-फाइनल-विन-एक्स 64 स्थापित कर रहा हूं । मुझे यह याद नहीं है कि मैं कहाँ से स्थापित किया गया था और इस तरह के डाउनलोड के लिए अब उपलब्ध कोई लिंक भी नहीं देख सका (उम्मीद है कि पृष्ठ में इस मुद्दे पर चर्चा हो सकती है) आपने x86 संस्करण कहाँ से स्थापित किया था? क्या आप अपने उत्तर में अधिक विवरण जोड़ सकते हैं क्योंकि यह सामान्य समस्या है।
rahulaga_dev

1
@RahulAgarwal खेल में थोड़ा देर से, लेकिन अगर आपको अभी भी सही डाउनलोड पृष्ठ नहीं मिला है, तो यह है: microsoft.com/net/download/windows x86 डाउनलोड लिंक पर क्लिक करें ।
कार्स्टन गेहलिंग

12

https://www.microsoft.com/net/download/visual-studio-sdks

आप उपरोक्त साइट से एसडीके डाउनलोड कर सकते हैं

SDK की जाँच करें जो आपकी मशीन में है Path C: \ Program Files \ dotnet \ sdk

दृश्य स्टूडियो में लक्ष्य ढांचे को बदलें या जांचें,

स्टार्टअप एप्लिकेशन या प्रोजेक्ट पर राइट क्लिक करें => एप्लीकेशन => लक्ष्य फ्रेमवर्क।

आप फ्रेमवर्क को बदल सकते हैं और समाधान का निर्माण कर सकते हैं और डली पैकेज को बहाल कर सकते हैं।

यहाँ छवि विवरण दर्ज करें


क्लास लाइब्रेरी (.NET Core) प्रोजेक्ट जोड़ने के बाद मुझे ओपी त्रुटि मिली। यह पता चलता है कि टार्गेट फ्रेमवर्क डिफ़ॉल्ट रूप से सेट नहीं किया गया था, इसलिए मुझे केवल इतना करना था कि इसे ड्रॉप डाउन से चुनें और सेव करें, समस्या हल हो गई।
jhhwilliams

7

वही मेरे साथ हुआ, लेकिन फिर .NET कोर के संस्करण 2.2 के लिए। मैंने .NET कोर 2.2 एसडीके का नवीनतम संस्करण स्थापित किया, जो उस समय 2.2.202 था। दृश्य स्टूडियो ने मुझे कोर 2.2 के लिए एक नई परियोजना बनाने की अनुमति दी, लेकिन यह त्रुटि दिखा रहा था:

"वर्तमान .NET SDK .NET Core 2.2 को लक्षित करने का समर्थन नहीं करता है। या तो .NET Core 2.1 या उससे कम लक्ष्य करें, या .NET Core 2.2 का समर्थन करने वाले .NET SDK के एक संस्करण का उपयोग करें।"

मेरी परियोजना के लिए लक्ष्य रूपरेखा खाली थी और ड्रॉपडाउन 2.2 नहीं दिखा।

.NET कोर एसडीके 2.2.103 को स्थापित करने के बाद, त्रुटि चली गई और ड्रॉपडाउन ने ".NET कोर 2.2" दिखाया।


2

प्रकाशन के लिए IIS को रोकने से समस्या हल हो गई। लेकिन पहले मुझे नेट कोर 2.1 एसडीके स्थापित करने और विजुअल स्टूडियो को अपडेट करने की आवश्यकता थी।


2

मेरे पास .Net Core SDK 2.1.4 स्थापित था और मेरी समस्या को हल किए बिना इस पोस्ट में अन्य उत्तरों का पालन किया। आखिरकार मेरे लिए यह क्या स्थापित किया गया था .Net कोर एसडीके संस्करण 2.1.301 , और हर दूसरे संस्करण की स्थापना रद्द करना। SDK 2.1.4 की तरह लगता है .Net Core 2.1 को लक्षित नहीं कर सकता है, लेकिन SDK 2.1.301 काम करता है।


क्या इसका मतलब है कि Visual Studio SDK 2.1.401 का उपयोग नहीं कर रहा है, जबकि यह 2.1.301 के बगल में स्थापित है?
बार्ट वीडीए

2

यह सुनिश्चित करने के लिए जांचें कि आपके पास global.jsonअपने प्रोजेक्ट रूट फ़ोल्डर में फाइल नहीं है जो आपकी परियोजना को केवल .NET SDK 2.1 का उपयोग करने के लिए मजबूर करता है।

यदि आपके पास यह Global.json फ़ाइल है, तो इसे हटा दें , और फिर दृश्य स्टूडियो को पुनरारंभ करें।

जैसा कि शर्मनाक लग सकता है, मैंने लगभग एक घंटे का समय बिताया और मैंने 2.2 का उपयोग करने के लिए मजबूर करने के लिए कई एसडीके संस्करण भी डाउनलोड किए।


2

मैंने इस तरह से समस्या को हल किया:

उपलब्ध डॉटनेट एसडीके पर संस्करणों की जाँच करें

C:\Users\me>dotnet --list-sdks

 ##2.1.202 [C:\Program Files\dotnet\sdk]
 ##2.1.505 [C:\Program Files\dotnet\sdk]
 ##2.1.508 [C:\Program Files\dotnet\sdk]
 ##2.1.509 [C:\Program Files\dotnet\sdk]
 ##2.1.511 [C:\Program Files\dotnet\sdk]
 ##2.1.514 [C:\Program Files\dotnet\sdk]
 ##2.1.801 [C:\Program Files\dotnet\sdk]

मैंने उन सभी संस्करणों पर अपने निर्माण का परीक्षण किया और यह तब तक काम नहीं करता जब तक कि मैंने उपरोक्त सभी कार्यक्रमों और विशेषताओं से अनइंस्टॉल नहीं किया। फिर नवीनतम से डाउनलोड करें:

https://dotnet.microsoft.com/download/dotnet-core/thank-you/sdk-3.1.300-windows-x64-installer

यह काम किया। समय बर्बाद मत करो, जैसे मैंने सिर्फ डॉटनेट एसडीके का नवीनतम संस्करण स्थापित किया है और आप जाने के लिए अच्छा है। "


1

मैं राइडर का उपयोग कर रहा हूं, मेरे पास था

वर्तमान .NET SDK .NET कोर 2.2 को लक्षित करने का समर्थन नहीं करता है। या तो .NET Core 2.1 को लक्षित करें या .NET .NET 2.2 का समर्थन करने वाले .NET SDK के एक संस्करण का उपयोग करें

मैं था:

$ dotnet --list-sdks
2.1.2 [C:\Program Files\dotnet\sdk]
2.1.202 [C:\Program Files\dotnet\sdk]
2.1.505 [C:\Program Files\dotnet\sdk]
2.1.602 [C:\Program Files\dotnet\sdk]
2.2.202 [C:\Program Files\dotnet\sdk]

मैंने केवल नवीनतम एसडीके रखने की कोशिश की, और किया था:

प्रोजेक्ट 'WebApplication3' लोड विफल रहा: SDK 'Microsoft.NET.Sdk.Web' निर्दिष्ट नहीं पाया जा सका।

इसलिए मैंने सब कुछ हटा दिया और 2.1.602 को फिर से इंस्टॉल किया। राइडर से नया प्रोजेक्ट बनवाया। और इसने काम किया । कह सकते हैं कि मैं समझ गया कि मैंने इसे कैसे हल किया ...

कुछ लोगों के लिए मुद्दे Global.json से जुड़े हुए प्रतीत होते हैं, देखें:
- https://docs.microsoft.com/fr-fr/aspnet/core/migration/21-to-22?view=aspnetcore-2.2&tabs= दृश्य-स्टूडियो
- https://docs.microsoft.com/fr-fr/dotnet/core/tools/global-json
- https://andrewlock.net/the-sdk-microsoft-net-sdk-web-specified- नहीं मिल पाया/

अन्य चीजें जो मैंने पहले की थीं (जो समस्या को हल करने के लिए प्रतीत नहीं
हुईं, लेकिन मदद की हो सकती है?): - 2018.3.2 से 2018.3.4 (नवीनतम) में राइडर को अपडेट करना। - मोनो स्थापित करना (राइडर बिल्ड सेटिंग्स में देखने पर एकता से एक का उपयोग कर रहा था)।
- सफलता के बिना Jetbrain (लिनक्स के लिए इस्तेमाल किया गया) से कस्टम MSBuild का उपयोग करने की कोशिश की।
- वी.एस. इंस्टॉलर से .NET कोर से संबंधित सब कुछ स्थापित करना।
- अद्यतन वीएस समुदाय ओ.टी. नवीनतम। - रिबूट।

में Rider/Build, Execution, Deployement/Toolset and Buildमैं अब है:
मोनो निष्पादन: C:\Program Files\Mono\bin\mono.exe
- नेट कोर CLI निष्पादन: C:\Program Files\dotnet\dotnet.exe
- उपयोग एमएस बिल्ड संस्करण (ऑटो का पता चला 16.0):C:\Program - Files\dotnet\sdk\2.1.602\MSBuild.dll


मुझे पूरा यकीन है कि इसे आपकी पोस्ट की अंतिम पंक्ति के साथ करना होगा: ताकि MSBuild संस्करण राइडर वास्तव में उपयोग कर रहा हो। यह आपके द्वारा उपयोग किए जाने वाले नवीनतम .NET कोर एसडीके द्वारा प्रदान किए गए बिंदु पर होना चाहिए; अन्यथा कुछ गलत है, और आपको एसडीके को फिर से स्थापित करने की आवश्यकता है ...
rarsna

0

SDK 2.2.300 को स्थापित करने के बाद मुझे यह त्रुटि मिलनी शुरू हुई। इस पोस्ट और कुछ अन्य को पढ़ने के बाद मैंने इसे SDK 2.2.1xx में डाउनग्रेड किया और त्रुटि दूर हो गई। नोट: मुझे एसडीके 2.2.300 की स्थापना रद्द करनी थी और एसडीके 2.2.1xx स्थापित करने के बाद पुनः आरंभ करना था।



0

अपनी पाइपलाइन पर जाएं। एडिट पाइपलाइन पर क्लिक करें। एजेंट विशिष्टता ड्रॉपडाउन पर क्लिक करें। इसे विंडोज 2019 में बदलें। सहेजें और कतार पर क्लिक करें।

और यहाँ तुम जाओ। इसने मेरे लिए अच्छा काम किया।


-1

ऐसा लगता है कि माइक्रोसॉफ्ट नेट कोर 2.1 में नवीनतम विकास सॉफ़्टवेयर के शुरुआती अपनाने वालों के लिए बेहतर कोडिंग अभ्यास को प्रोत्साहित कर रहा है, जहां पुराने सॉफ्टवेयर का उपयोग करने की क्षमता को हटाकर बुरी आदतें पैदा होती हैं। नेट कोर 2.0 और पुराने संस्करण जीवन के लगभग अंत हैं इसलिए इसका उपयोग बिल्कुल नहीं किया जाना चाहिए। ( https://blogs.msdn.microsoft.com/dotnet/2018/06/20/net-core-2-0-will-reach-end-of-life-on-sest-1-2018/ )

1) Microsoft ने ServiceLocator को हटा दिया है क्योंकि व्यापक रूप से एक एंटी-पैटर्न माना जाता है जिसके परिणामस्वरूप कोड को समझना मुश्किल है।

2) एमवीसी अनुप्रयोगों में सुधार करने के लिए, खाता नियंत्रक को रेज़र पृष्ठों के उपयोग को प्रोत्साहित करने के लिए प्रमाणीकरण / प्राधिकरण से हटा दिया गया था जो एकल जिम्मेदारी सिद्धांत को लागू करते हैं।

अतीत में निम्न सॉफ्टवेयर इंजीनियरिंग मानकों के लिए बनाए गए सॉफ्टवेयर की निरंतरता बढ़ाने के लिए इन परिवर्तनों को दरकिनार करना सबसे अच्छा अभ्यास नहीं माना जाएगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.