2011-07-06 14 views
15

मैं NuGet द्वारा स्थापित कुछ संकुल अनइंस्टॉल करने का प्रयास कर रहा हूं। here वर्णित दस्तावेज़ के अनुसार, मुझे इंस्टॉल करना चाहिए जब मैं स्थापित पैकेज का चयन करता हूं तो बटन (नीचे पहला स्क्रीनशॉट) अनइंस्टॉल करें। हालांकि, मुझे केवल देखें बटन (नीचे दूसरा स्क्रीनशॉट) प्रबंधित करें। क्या कोई मुझे बता सकता है कि पैकेज को अनइंस्टॉल कैसे करें?NuGet संकुल को अनइंस्टॉल करने में समस्या

NuGet Doc Screenshot

My Screenshot

उत्तर

12

अंत में, मैंने पाया मैं मैन्युअल .sln समाधान फ़ाइल को संपादित और इन पंक्तियों को दूर करने के लिए किया था:

GlobalSection(ExtensibilityGlobals) = postSolution 
     EnterpriseLibraryConfigurationToolBinariesPath = packages\Unity.2.1.505.0\lib\NET35;packages\Unity.Interception.2.1.505.0\lib\NET35;packages\EnterpriseLibrary.Common.5.0.505.0\lib\NET35;packages\EnterpriseLibrary.Data.5.0.505.0\lib\NET35 
EndGlobalSection 

समाधान फ़ाइल में ऊपर लाइनों को हटाने के बाद, उन पैकेज NuGet पैकेज विंडो "स्थापित में गायब हो गया पैकेज "पृष्ठ। केवल एक पैकेज बाकी है और अब मैं "अनइंस्टॉल करें" बटन देख सकता हूं।

enter image description here

संपादित करें: मैं अपने समाधान निर्देशिका में संकुल फ़ोल्डर को हटाने के लिए था।

+1

मेरे मामले में, समाधान फ़ाइल में कोई संदर्भ नहीं थे, लेकिन पैकेज किए गए निर्देशिका से पैकेज फ़ोल्डर को हटाना चाल था। –

+1

+1 मेरे मामले में मेरे पास मेरी समाधान फ़ाइल में संदर्भ थे, लेकिन पैकेज निर्देशिका में पैकेज फ़ोल्डर को हटाना पर्याप्त होगा। – fiberOptics

+0

आप पैकेज प्रबंधक कंसोल का उपयोग करके ऐसा कर सकते हैं, जैसा कि मैंने अपने उत्तर में बताया है। और आप पूरी तरह से यह सुनिश्चित नहीं कर सकते कि आप जो कुछ करने की ज़रूरत है वह कर रहे हैं। पैकेज प्रबंधक कंसोल का उपयोग उस सम्मान पर सुरक्षित है। – JotaBe

13

आप NuGet प्रलेखन पृष्ठ आपको आपके द्वारा से जुड़ा हुआ बटन और एक विवरण प्रबंधित देखेंगे Managing Installed Packages अनुभाग तक नीचे स्क्रॉल करें।

NuGet 1.4 में एक नई सुविधा पेश की गई जो आपको समाधान एक्सप्लोरर में समाधान का चयन करने और एक चरण में कई परियोजनाओं से पैकेज जोड़ने/हटाने की अनुमति दे रही थी। पहले आपको समाधान एक्सप्लोरर में प्रत्येक प्रोजेक्ट का चयन करना था और एक ही समय में प्रत्येक प्रोजेक्ट से पैकेज को जोड़ना/निकालना था।

यदि आप प्रबंधित करें बटन पर क्लिक करते हैं तो एक प्रोजेक्ट का चयन करें संवाद प्रदर्शित किया जाएगा जहां आप उन परियोजनाओं को अनचेक कर सकते हैं जिन्हें आप NuGet पैकेज से अनइंस्टॉल करना चाहते हैं।

enter image description here

आप के बजाय परियोजना समाधान Explorer में समाधान आप/जोड़ सकते हैं कि चयनित परियोजना से पैकेजों को निकालना का चयन करते हैं। इस मामले में आप केवल इंस्टॉल और अनइंस्टॉल बटन देखेंगे।

+2

लेकिन यह मेरे समाधान से संकुल को नहीं हटाता है। संकुल अभी भी "इंस्टॉल किए गए पैकेज" पृष्ठ के अंतर्गत दिखाए जाते हैं, जिनके पास "प्रबंधित करें" बटन हैं। साथ ही, मेरी समाधान निर्देशिका में एक "पैकेज" फ़ोल्डर है। क्या आप जानते हैं कि "स्थापित संकुल" पृष्ठ से संकुल को कैसे निकालें? धन्यवाद। – StarCub

+1

संकुल केवल समाधान से हटा दिए जाते हैं जब यह किसी भी प्रोजेक्ट में स्थापित नहीं होता है। इसलिए यदि आप सब कुछ अन-चेक नहीं करते हैं तो यह अभी भी समाधान में स्थापित होगा। समाधान स्तर संवाद में जब आप विवरण फलक देखते हैं तो आप देख सकते हैं कि कौन सा प्रोजेक्ट है। – davidfowl

0

मुझे कोड पहले lib सीटीपी 5 को हटाने की समस्या थी, जिस पर निर्भरता थी, अनइंस्टॉल ने कोई संदेश नहीं दिया और कुछ भी नहीं हटाया। Packages.config से संदर्भ हटाएं जिन्हें आपको निकालना होगा। उसके बाद यह अब और अधिक में नहीं दिखाई देगा और आप बिना पुनर्स्थापित या जारी रख सकते हैं।

8

कभी-कभी ऐसी निर्भरताएं होती हैं जो किसी पैकेज को अनइंस्टॉल करने की अनुमति नहीं देती हैं, लेकिन आपको वैसे भी ऐसा करने की आवश्यकता है (यानी यदि आप अनजाने में निर्भरता वाले पैकेज के दो अलग-अलग संस्करण स्थापित करते हैं)।

जब ऐसा होता है, तो संकुल को अनइंस्टॉल करने का एकमात्र तरीका अनइंस्टॉलेशन को मजबूर करना है, और यह केवल पैकेज प्रबंधक कंसोल के माध्यम से किया जा सकता है।

कंसोल पर जाने से पहले, आपको NuGet पैकेज प्रबंधित करें विंडो खोलना चाहिए, और अपने पैकेज के आईडी और संस्करण को नोट करना चाहिए, जो कि जब आप पैकेज पर क्लिक करते हैं तो दाएं फलक पर दिखाई देता है।

तो फिर तुम खिड़की की व्यवस्था करें बंद कर सकते हैं, और कंसोल (पैकेज प्रबंधक कंसोल) खोलने के लिए, और इस कमांड चलाएँ:

uninstall-package -Id YourPackageId -Force -Version YourPackageVersion 

नोट फोर्स पैरामीटर। उदाहरण के लिए

uninstall-package -Id Unity -Force -Version 3.0.1304.0 

यह आदेश जब यह संस्करण 2, जो प्रबंधित खिड़की throgh नहीं किया जा सकता के साथ समानांतर में स्थापित किया गया है संस्करण 3 की स्थापना रद्द करने की अनुमति देता है।

0

वीएस आईडीई का उपयोग करने के बाद NuGet संकुल संवाद या पैकेज प्रबंधक कंसोल प्रबंधित करें आपको फ़ाइल सिस्टम पर समाधान फ़ाइलों या अन्य फ़ाइलों को मैन्युअल रूप से निकालना पड़ सकता है जो संकुल फ़ोल्डर में नहीं पैकेज का हिस्सा हैं।

मैं Microsoft.AspNet.FriendlyUrls पैकेज का मूल्यांकन कर रहा था जिसमें एक मास्टर पेज, उपयोगकर्ता नियंत्रण, एक क्लास कोड फ़ाइल और एक संकुल.कॉन्फिग फ़ाइल को मेरे एएसपी.NET वेब अनुप्रयोग प्रोजेक्ट/समाधान में जोड़ा गया था। पैकेज को हटाने के लिए NuGet संकुल संवाद का उपयोग करने से पहले मैंने इन फ़ाइलों को मैन्युअल रूप से समाधान से पूर्ववत/निकालने की गलती की। उस बिंदु पर सब कुछ भ्रमित हो गया।

जैसा कि अन्य ने कहा है, पैकेज फ़ोल्डर को हटाना समाधान था। लेकिन फिर मुझे उस फ़ोल्डर के बाहर अन्य फाइलों को मैन्युअल रूप से समझना पड़ा जिसे हटाया जाना चाहिए।

2

मुझे हाल ही में इसी तरह के मुद्दे थे। मेरी परियोजना ठीक काम करती है लेकिन मैं अब NuGet पैकेज प्रबंधक के माध्यम से किसी भी पैकेज को जोड़ या हटा नहीं सकता क्योंकि एंटरप्राइज़ लाइब्रेरी 5.0.505 स्रोत से गायब के रूप में दिखाया गया था। लेकिन इसे पुनर्स्थापित या हटाने का प्रयास करने से पैकेज 'एंटरप्राइज़ लाइब्रेरी' पैकेज के 5.0.505 "त्रुटि को खोजने में असमर्थ" त्रुटि के साथ असफल रहा।

मैं इस packages.config फ़ाइल में निम्न संदर्भ होने के लिए नीचे का पता लगाया:

<package id="EnterpriseLibrary" version="5.0.505" targetFramework="net4" /> 

अन्य समाधान के साथ इस मुकाबले जो मैं अभी हाल ही में मैं करने के लिए इसे बदल पैकेज जोड़ा, निम्नलिखित है, जो तय मुद्दा:

<package id="EnterpriseLibrary.Common" version="5.0.505.0" targetFramework="net4" /> 

मैंने कभी भी पैकेज.कॉन्फिग फ़ाइलों को मैन्युअल रूप से संपादित नहीं किया है, इसलिए मुझे नहीं पता कि मेल नहीं हुआ। हो सकता है कि संदर्भ मूल रूप से कॉन्फ़िगरेशन फ़ाइल को अद्यतन किए बिना पैकेज सहित बदल गया ...?

संबंधित मुद्दे