विजुअल स्टूडियो में ओपनिंग प्रोजेक्ट विफल होने के कारण nuget.targets को त्रुटि नहीं मिली


105

इसलिए मैंने http://www.twitterizer.net/downloads/ से Twitterizer डाउनलोड किया

मैं इसे विजुअल स्टूडियो में खोलने की कोशिश करता हूं और इन सभी नगेट त्रुटियों को प्राप्त करता हूं:

The imported project "C:\Twitterizer\.nuget\nuget.targets" was not found. 
Confirm that the path in the <Import> declaration is correct, and that the file 
exists on disk.

क्या हो रहा है। इससे मैं कैसे निपटूं?


5
यदि कोई अन्य व्यक्ति इसमें भाग लेता है तो बस एक नोट। Nuget 2.7 ने एक नए प्रकार के पैकेज रिस्टोर को पेश किया। यदि आप एक ऐसी परियोजना को जोड़ने की कोशिश करते हैं जो पुरानी शैली का उपयोग एक समाधान में करती है जो नई शैली का उपयोग करती है तो आपको यही त्रुटि मिलेगी। इसे ठीक करने का तरीका प्रोजेक्ट को नई शैली में माइग्रेट करना है: docs.nuget.org/docs/workflows/…
Slapout

जवाबों:


171
  1. Nuget स्थापित करें।
  2. समाधान पर राइट क्लिक करें और "सक्षम करें एनगेट पैकेज रिस्टोर" चुनें। दृश्य स्टूडियो 2013 और बाद में, इसके बजाय "पुनर्स्थापना NuGet संकुल" का चयन करें।
  3. चेतावनी पर ठीक क्लिक करें।
  4. समाधान को बंद करें और फिर से खोलें।

अब हुंकी-डोरी होना चाहिए।


2
इसके लिए धन्यवाद, अच्छा होगा यदि वे इसके लिए वीएस में अधिक उपयोगी त्रुटि संदेश देते हैं।
रॉइसडेड

2
मैं अभी भी इस त्रुटि को प्राप्त कर रहा हूँ, हालांकि यह अब nuget 2.7 पर लागू नहीं होता है
Thepaulpage

आपको वर्कअराउंड @Slapout उल्लेख (मूल प्रश्न पर टिप्पणी) करने की आवश्यकता है
जेसन

अभी भी यहां काम नहीं कर रहा है, यह कहता है कि बहाल करने के लिए अधिक निर्भरता नहीं है मैंने पहले ही पैकेज फोल्डर को डिलीट कर दिया है और एक-दो बार
रिस्टोर किया है

23

एक विकल्प एक। के साथ .csproj फ़ाइल को संपादित करने और खंड को हटाने या टिप्पणी करने के लिए है।


4
इस मामले पर विस्तार करने के लिए - यदि आप किसी प्रोजेक्ट को किसी स्पष्ट .nuget \ nuget.targets फ़ाइल से किसी नए सिरे से ले जाते हैं, तो आपको यह समस्या दिखाई देगी (NuGet संकुल को पुनर्स्थापित करने के बाद भी।) इस स्थिति में, या तो nuget बनाएँ। .target या प्रोजेक्ट फ़ाइल को मैन्युअल रूप से संपादित करें।
ThisGuy

मैंने इस समाधान को भी लागू किया क्योंकि मेरे प्रोजेक्ट में नूगेट पैकेज का उपयोग नहीं किया गया था और वीएस ने इस सामान को ऑटो-जनरेट किया है। संस्करण नियंत्रण के लिए धन्यवाद स्वर्ग जिसने इसे .croroj से अतिरिक्त लाइनों को किक-आउट करना संभव बना दिया।
इवान जी

किस खंड को हटाना होगा?
जैपनीगोलिका

18

यह त्रुटि सामान्य रूप से तब होती है जब आप .csprojसमाधान फ़ाइल के माध्यम से नहीं, बल्कि सीधे खोलने की कोशिश कर रहे हैं , और .csprojइस तरह से नुगेट लक्ष्य आयात करते हैं:

<Import Project="$(SolutionDir)\.nuget\NuGet.targets" />

इसे हल करने के लिए, आप या तो खोल सकते हैं .slnऔर .csprojसीधे नहीं ... या importऊपर की रेखा को हटा सकते हैं ।

ध्यान दें कि उल्लिखित त्रुटि केवल तब होगी जब आप solution wiseपैकेज पुनर्स्थापना का उपयोग कर रहे हों , जो कि अब भी अनुशंसित नहीं है।


2
यह वह मुद्दा है जो मेरे पास था।
स्पार्कशीट्स

1
"ऊपर आयात लाइन हटा"। मेरे लिए चाल चली। धन्यवाद!!
बार्ट

5

बस उसी समस्या में भाग गया, लेकिन मेरे मामले में फ़ोल्डर नाम में एक समस्या थी:

Nuget मुझे बता रहा था कि यह "C: \ git \ My Path" नहीं मिल सका, लेकिन मैं "C: \ git \ My% 20Path" पर नेविगेट करने में सक्षम था। फ़ोल्डर में स्थान को हटाकर समस्या को "ठीक" कर दिया गया।


यह मेरा मुद्दा बिल्कुल था - बहुत-बहुत धन्यवाद!
D.Nielsen

2

मुझे पता है कि मुझे पार्टी में देर हो रही है लेकिन यहाँ इस मुद्दे को ठीक करने के बारे में एक अच्छा ट्यूटोरियल है। मैंने अपने प्रोजेक्ट को ठीक करने के लिए इसका इस्तेमाल किया।

Visual Studio को बंद करें यदि आप जिस समाधान को माइग्रेट करने का प्रयास कर रहे हैं वह Visual Studio में खुला है, तो परिवर्तन खो सकते हैं। दृश्य स्टूडियो कुछ मामलों में आपके परिवर्तनों को अधिलेखित / अनदेखा कर सकता है और NuGet एक्सटेंशन पैकेज पुनर्स्थापना को फिर से सक्षम करने का प्रयास करेगा जब यह देखता है कि समाधान में कुछ परियोजनाएं इसे याद नहीं कर रही हैं।

यदि आप TFS का उपयोग कर रहे हैं तो NuGet.exe और NuGet.targets फ़ाइलों को समाधान के .nuget फ़ोल्डर से निकालें। सुनिश्चित करें कि समाधान कार्यक्षेत्र से फ़ाइलें स्वयं भी निकाल दी जाती हैं। स्रोत नियंत्रण में पैकेजों को जोड़ने के लिए जारी रखने के लिए NuGet.Config फ़ाइल को फिर से रखें। प्रत्येक प्रोजेक्ट फ़ाइल (जैसे .csproj, .vbproj) को समाधान में संपादित करें और NuGet.targets फ़ाइल के किसी भी संदर्भ को हटा दें। अपनी पसंद के संपादक में प्रोजेक्ट फाइल खोलें और निम्नलिखित सेटिंग्स को हटा दें:

सच ... ...

<PropertyGroup>
    <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download

उन्हें। अधिक जानकारी के लिए, http://go.microsoft.com/fwlink/?LinkID=322105 देखें । अनुपलब्ध फ़ाइल {0} है। यदि आप अपने समाधान से TFS निकालें .nuget फ़ोल्डर का उपयोग नहीं कर रहे हैं। सुनिश्चित करें कि समाधान कार्यक्षेत्र से फ़ोल्डर स्वयं भी हटा दिया गया है। प्रत्येक प्रोजेक्ट फ़ाइल (जैसे, .csproj, .vbproj) को समाधान में संपादित करें और NuGet.targets फ़ाइल के किसी भी संदर्भ को हटा दें। अपनी पसंद के संपादक में प्रोजेक्ट फाइल खोलें और निम्नलिखित सेटिंग्स निकालें:

सच ... ...

<PropertyGroup>
    <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download

उन्हें। अधिक जानकारी के लिए, http://go.microsoft.com/fwlink/?LinkID=322105 देखें । अनुपलब्ध फ़ाइल {0} है। माइग्रेशन स्क्रिप्ट कई उपयोगकर्ताओं ने MSBuild- आधारित पैकेज रिस्टोर को अक्षम करने और ऑटोमैटिक पैकेज रिस्टोर में बदलने के लिए माइग्रेशन टूल का अनुरोध किया है। NuGet टीम ने किनारे के मामलों की उच्च संभावना के कारण इसके लिए एक समर्थित उपकरण प्रदान नहीं करने का फैसला किया है, जो कि अखंडित होगा। हालाँकि, ओवेन जॉनसन ने एक पॉवरशेल स्क्रिप्ट लिखी है जो कई मामलों में काम कर सकती है। यह GitHub पर उपलब्ध है और इसे अपने जोखिम पर इस्तेमाल किया जा सकता है। दूसरे शब्दों में, इसे चलाने से पहले स्रोत नियंत्रण के लिए प्रतिबद्ध होना सुनिश्चित करें, बस अगर यह आपके परिदृश्य में काम नहीं करता है।

Nuget.target फिक्स


1

जब मुझे nuget.targets not foundत्रुटि मिलती है तो मैं uninstall-packageप्रोजेक्ट के किसी एक पैकेज में पैकेज मैनेजर का उपयोग करता हूं और फिर इसका उपयोग करके पुन: स्थापित करता हूं install-package। ऐसा लगता है कि यह फिर nugets.target फ़ाइल को पुन: बनाता है।


1

जब आप NuGet.targetsVisual Studio समाधान एक्सप्लोरर में लापता को पुनर्स्थापित करने के लिए यह त्रुटि प्राप्त करते हैं तो सबसे आसान समाधान निम्न है:

  1. समाधान फ़ाइल पर राइट क्लिक करें
  2. संदर्भ मेनू से " एनगेट पैकेज पुनर्स्थापना सक्षम करें ..." विकल्प पर क्लिक करें

यह " .nuget" फ़ोल्डर में गुम फाइलों को डाउनलोड करेगा :)

उपरोक्त मान लें कि आपके पास पहले से ही Nuget स्थापित है - यदि ऊपर दिए गए स्वीकृत उत्तर का पालन नहीं किया गया है!

अद्यतन करें: 2013 से परे विज़ुअल स्टूडियो संस्करणों के लिए कृपया ध्यान दें, विकल्प को " पुनर्स्थापना नुगेट संकुल " कहा जाता है।


1
मेरे पास नगेट पैकेज पुनर्स्थापना विकल्प सक्षम नहीं है। मेरे पास बस है restore nuget packages
जैपनीगोलिका

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