".NETFramework, संस्करण = v4.6.2" फ्रेमवर्क के लिए संदर्भ असेंबलियां नहीं मिलीं


112

किसी समाधान को संकलित करने का प्रयास करते समय, मुझे निम्नलिखित बिल्ड त्रुटि मिलती है:

MSB3644 त्रुटि फ्रेमवर्क ".NETFramework, संस्करण = v4.6.2" के लिए संदर्भ असेंबली नहीं मिली। इसे हल करने के लिए, इस फ्रेमवर्क संस्करण के लिए एसडीके या टारगेटिंग पैक को स्थापित करें या अपने आवेदन को उस फ्रेमवर्क के संस्करण के लिए पुन: सेट करें, जिसके लिए आपने एसडीके या लक्ष्यीकरण पैक स्थापित किया है। ध्यान दें कि असेंबलियों को ग्लोबल असेंबली कैश (GAC) से हल किया जाएगा और संदर्भ असेंबलियों के स्थान पर उपयोग किया जाएगा। इसलिए आपकी असेंबली का इरादा आपके लिए सही तरीके से लक्षित नहीं हो सकता है। C: \ RPR \ Dev \ Lbooks \ Common \ Common.csproj C: \ Program Files (x86) \ Microsoft विज़ुअल स्टूडियो \ 2017 \ समुदाय \ MSBuild \ 15.0 \ Bin \ Microsoft।

मैंने .NET फ्रेमवर्क 4.6.2 एसडीके, साथ ही 4.6 लक्ष्यीकरण पैक स्थापित करने की कोशिश की है, हालांकि दोनों त्रुटि जो मैंने पहले ही स्थापित की है। मैंने Visual Studio 2017 स्थापित करने का भी प्रयास किया, लेकिन यह अभी भी वही त्रुटि देता है।

कोई विचार?


4
मैंने देखा है कि जब आप 4.5.2 डेवलपर पैक (अर्थात 4.6.2 नहीं, बल्कि 4.5.2 डेवलपर पैक) स्थापित करते हैं तो यह समस्या दूर हो जाती है।
पीटर रिची

मुझे 4.8 के साथ यह समस्या हुई है, किसी कारण से मेरी csproj फाइलें 4.8.0अंदर थीं , जो कि 4.8जाहिरा तौर पर समान नहीं है ।
जसेक गोर्गो

वास्तविक उत्तर के लिए, stackoverflow.com/a/58850755/155077
स्टीफन स्टीगर जूल

जवाबों:


96

यह पता चला है कि मैंने .NET फ्रेमवर्क v4.6.2 स्थापित किया था, 4.6.2 के लिए डेवलपर पैक नहीं। रवींद्र!

https://www.microsoft.com/en-us/download/details.aspx?id=53321


मैंने देव पैक 462 स्थापित किया और अभी भी चेतावनी प्राप्त करता हूं। क्या मुझे अपनी मशीन को पुनः आरंभ करना होगा?
जिम

5
मुझे स्थापित करने के बाद दृश्य स्टूडियो को फिर से शुरू करना पड़ा, फिर सभी अच्छे
जोन्सोपोलिस

67

विंडोज -> खोज -> विजुअल स्टूडियो इंस्टॉलर -> संशोधित -> व्यक्तिगत घटक और सही संस्करण की जांच करें


9
यह एक साफ समाधान है क्योंकि विज़ुअल स्टूडियो आपके लिए सभी संस्करणों को सूचीबद्ध करेगा और दिखाता है कि आपने वर्तमान में क्या इंस्टॉल किया है और डाउनलोड / इंस्टॉल का प्रबंधन करेगा।
ओलिव_ट्री

1
उपरोक्त सभी समाधानों की कोशिश की और कोई भी काम नहीं किया। इसने काम किया। धन्यवाद
चार्ली Seligman

मेरा v4.6.1 (संदर्भ असेंबलियों) के लिए पूछ रहा है और यह इंस्टॉलर के माध्यम से स्थापित v4.6.1 (विकास उपकरण) दिखाता है ... अभी भी यह पता लगाने की कोशिश कर रहा है कि क्या चल रहा है। CANCEL THAT: मेरा मुद्दा यह था कि .NET फ्रेमवर्क में से कोई भी डिफ़ॉल्ट रूप से स्थापित नहीं किया गया था। धन्यवाद।
Xonatron

1
यह गंभीरता से शीर्ष उत्तर होना चाहिए!
टॉम हबलबॉयर

यह एक सबसे अच्छा जवाब है!
Himechi90


13

मई, 2019 से आप नेट 20 तक अपने प्रोजेक्ट का निर्माण कर सकते हैं (कम से कम MS46) सहित किसी भी मशीन को net48 तक।

यदि .NET कोर SDK आपको मशीन में स्थापित करता है, तो अपनी परियोजना में nuget पैकेज Microsoft.NETFramework.ReferenceAssemblies जोड़ें।

    <ItemGroup>
        <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.0-preview.2">
            <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
            <PrivateAssets>all</PrivateAssets>
        </PackageReference>     
    </ItemGroup>

पैकेज में सभी संदर्भ शामिल हैं

ये पैकेज कम से कम MSBuild या .NET Core SDK स्थापित प्लस अन्य परिदृश्यों के साथ किसी भी मशीन पर .NET फ्रेमवर्क परियोजनाओं के निर्माण में सक्षम बनाता है।

अधिक जानकारी के लिए: https://github.com/Microsoft/dotnet/tree/master/releases/reference-assemblies


उत्कृष्ट समाधान!
आकाश अग्रवाल

बिल्कुल सही, काम करता है <ItemGroup Condition = "$ (TargetFramework) '==' net20 'या' $ (TargetFramework) '==' net40 '">
स्टीफन स्टीगर

12

जब ".NETFramework, Version = v4.7.1" को छोड़कर, मुझे ठीक वैसी ही त्रुटि मिल रही थी।

मैंने यहां से 4.7.1 के लिए डेवलपर पैक डाउनलोड किया: https://www.microsoft.com/en-us/download/confirmation.aspx?id=56119

पैक ने इन कार्यक्रमों को लक्ष्य मशीन (मेरा बिल्ड सर्वर) पर स्थापित किया।

  • Microsoft .NET फ्रेमवर्क 4.7.1 SDK
  • Microsoft .NET फ्रेमवर्क 4.7.1 लक्ष्यीकरण पैक
  • Microsoft .NET फ्रेमवर्क 4.7.1 लक्ष्यीकरण पैक (ENU)

जब मैंने फिर से निर्माण की कोशिश की, तो मुझे अब कोई त्रुटि नहीं मिली और बिल्ड सफल रहा।


1
समान समस्या (सर्वर त्रुटि का निर्माण)। एक ही त्रुटि थी, लेकिन 4.7.1 के लिए और इसने मेरे लिए इसे हल कर दिया।
ब्रेंडन

4.7.2 के लिए डिट्टो।
लॉसमनोस

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