मैं एक प्रोजेक्ट पर काम कर रहा हूं जो nuget का उपयोग करता है लेकिन पैकेज पुनर्स्थापना का उपयोग नहीं करता है। (यह मेरे नियंत्रण के बाहर एक निर्णय है, इसलिए पैकेज पुनर्स्थापना को सक्षम करने वाले किसी भी उत्तर में वे उपयोग नहीं कर पाएंगे।)पैकेज पुनर्स्थापना का उपयोग नहीं कर रहा है, लेकिन फिर भी "nuget पैकेज को स्थापित करना होगा Microsoft.Bcl.Build"
समाधान में कुछ हद तक परियोजनाएं (4 में से 4
...packages\Microsoft.Bcl.Build.1.0.13\tools\Microsoft.Bcl.Build.targets(225,5): warning : All projects referencing Valhalla.Consumer.Core.csproj must install nuget package Microsoft.Bcl.Build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317569.
वह लिंक मानता है कि मैं चालू करने के लिए चाहता हूँ: 34 के कुल एक WinJS app की दुकान परियोजना, दो साधारण नेट वर्ग पुस्तकालय, और मेरे Azure क्लाउड प्रोजेक्ट में से एक) इस कुख्यात चेतावनी रिपोर्ट कर रहे हैं पैकेज बहाल पर। तो क्या इस विषय पर अब तक की हर दूसरी सलाह है जिसे मैंने अभी तक प्रबंधित किया है।
मैंने विकल्पों में पैकेज पुनर्स्थापना को अक्षम करने का प्रयास किया -> पैकेज प्रबंधक -> सामान्य सेटिंग्स, वैसे भी। इससे मदद नहीं मिलती है (और यदि यह भी हुआ, तो यह अवांछित होगा - मैं जिस चीज पर काम करता हूं, उसमें पैकेज पुनर्स्थापना का उपयोग करता हूं)।
मुझे सच में समझ में नहीं आ रहा है कि मैं इसे ऐसे समाधान में क्यों प्राप्त कर रहा हूं जो पैकेज पुनर्स्थापना का उपयोग नहीं करता है। जैसा कि मैं इसे समझता हूं, पैकेज के पूरे बिंदु को यह पैकेज पुनर्स्थापना का समर्थन करना है। तो एक समाधान में जिसमें पैकेज पुनर्स्थापना उपयोग में नहीं है, यह इस पैकेज के मौजूद होने के लिए अजीब लगता है।
हालांकि, ऐसा लगता है कि कुछ अन्य nuget संकुल आपको इस पर निर्भर करते हैं। मेरे पास एक विंडोज रनटाइम घटक प्रोजेक्ट है जो Microsoft.Bcl
का उपयोग करता है, जो कि किसी कारण से Microsoft.Bcl.Build
पर निर्भरता है। (जब मैंने प्रोजेक्ट बनाया था तो विजुअल स्टूडियो मेरे लिए Microsoft.Bcl
पैकेज जोड़ना प्रतीत होता था। संभवतः यह आवश्यक है।) अन्य परियोजनाएं HTTP क्लाइंट पुस्तकालयों के माध्यम से Microsoft.Bcl.Build
पर निर्भरता प्राप्त करने लगती हैं।
तो जाहिर है, कुछ आम nuget संकुल Microsoft.Bcl.Build
पर निर्भरता को मजबूर करने लगते हैं चाहे आप पैकेज पुनर्स्थापना का उपयोग कर रहे हों या नहीं।
यह ठीक होगा अगर आप इस चेतावनी को प्राप्त करने वाली सभी परियोजनाओं के लिए प्रासंगिक पैकेज जोड़कर चेतावनी को खत्म कर सकते हैं। लेकिन परेशान बात यह है कि भले ही मैं Microsoft.Bcl.Build
पैकेज उपभोग करने वाले घटकों (जैसे, मेरे विनजेएस विंडो स्टोर ऐप) में जोड़ूं, फिर भी मुझे यह चेतावनी मिलती है! (इसलिए यह शिकायत जारी रखता है कि मुझे इसे स्थापित करने के बाद भी nuget पैकेज स्थापित करने की आवश्यकता है।)
क्या कोई इस स्थिति में इस चेतावनी को कैसे खत्म कर सकता है? ऐसा करने से मुझे जो करना है वह करना पर्याप्त प्रतीत नहीं होता है। क्या कमी है?
आप इस परियोजना में SkipValidatePackageReferences संपत्ति का उपयोग कर की कोशिश की के रूप में में सुझाव दिया Microsoft.Bcl.Build.targets फ़ाइल? –
हालांकि इससे छुटकारा पाता है, क्या यह वैध चेतावनियों को भी रोक नहीं पाएगा? यदि प्रोजेक्ट यू प्रोजेक्ट पी का उपयोग करता है, तो यू में सभी समान nuget संकुल पी के रूप में होना चाहिए। आम तौर पर, nuget जांच करेगा और आपको बताएगा कि क्या आप कुछ खो रहे हैं, लेकिन यह सेटिंग उस चेक को अक्षम करती है। जब मैं वास्तव में एक पैकेज खो रहा हूं, तो मुझे चेतावनियां प्राप्त करना चाहूंगा, लेकिन जब मैं वास्तव में इसका संदर्भ करता हूं तो 'माइक्रोसॉफ्ट.बीसी.बिल्ड' के बारे में चेतावनियां नहीं मिलतीं। –
डुनो अगर पैकेज पुनर्स्थापना सक्षम है तो NuGet के v2.7 + में ओओटीबी कोई उपयोग है ('माइक्रोसॉफ्ट.बीक्ल.बिल्ड' के जिल्च को जानें) –