2012-11-12 31 views
6

मैंने हाल ही में बनाम 2010010 प्रो SP1 का उपयोग कर एक नई मशीन पर अपना मुख्य देव मशीन से अपना समाधान ले लिया है। निर्माण को विफल करने के अलावा सेटअप समान होना चाहिए।त्रुटि निर्माण, चेतावनी MSB3258

तरह

ग इसकी दे रही त्रुटियों: \ Windows \ Microsoft.NET \ फ्रेमवर्क \ v4.0.30319 \ Microsoft.Common.targets (1360,9): चेतावनी MSB3258: प्राथमिक संदर्भ "C: \ rep \ hms \ trunk \ ikassystemv3 \ ikasDAL \ bin \ Debug \ ikasDAL.dll "को हल नहीं किया जा सका क्योंकि इसकी .NET Framework असेंबली पर अप्रत्यक्ष निर्भरता है" mscorlib, संस्करण = 4.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = b77a5c561934e089 "वर्तमान लक्ष्य ढांचे में संस्करण" 2.0.0.0 "की तुलना में उच्च संस्करण" 4.0.0.0 "है।

हालांकि प्रश्न में सभी पुस्तकालयों को .NET 2 ढांचे का उपयोग करने के लिए सेट किया गया है और मुझे इसकी आवश्यकता है या अन्यथा यह उन चीजों को तोड़ देगा जो उनका उपयोग करते हैं।

हालांकि किसी कारण से ऐसा लगता है कि किसी भी तरह से मेरे .NET 2 सिस्टम libs किसी भी तरह से संदर्भित नहीं हैं .net 4 stuff। सभी संदर्भित libs शुद्ध कर रहे हैं 2

आप अपने निर्माण उत्पादन यहाँ

http://tinyurl.com/bnugru4

+0

'ikasDAL.dll' – codingbiz

+1

के साथ कुछ करने के लिए अपनी परियोजनाओं में से एक 'ikasDAL' है? इसका क्या संदर्भ है? –

उत्तर

2

मैं इस समस्या को देखा है जब एक CopyLocal परियोजना संदर्भ का उपयोग करने और लक्ष्य ढांचा बदल रहा है देख सकते हैं (यानी .NET 4 से 2) निर्भर परियोजना (यानी ikasDAL.dll) पर।

यदि यह मामला है, तो आउटपुट फ़ोल्डर (यानी सी: \ rep \ hms \ trunk \ ikassystemv3 \ ikasDAL \ bin \ Debug) को हटाने और पुनर्निर्माण को पूरी चीज़ को ठीक करना चाहिए।

+0

इस जानकारी के लिए धन्यवाद, भले ही यह सीधे मदद नहीं करता, यह मुझे सही दिशा में ले गया। यह पता चला कि मेरी डीएएल कक्षा lib mysql.data.dll का संदर्भ दे रहा था। किसी कारण से MySQL lib के लिए CopyLocal को सही करने के लिए सभी समस्याओं को दूर कर दिया गया है। – Steed

+0

ऐसा शायद इसलिए था क्योंकि आपने अपनी मशीन (केवल) के वैश्विक असेंबली कैश में mysql.data.dll का .NET 4 लक्षित संस्करण स्थापित किया था। CopyLocal ने आपके बिन फ़ोल्डर में सही उपयोग करने के लिए अपनी बिल्ड प्रक्रिया को मजबूर कर दिया। – abto

0

लॉग से यह सुनिश्चित करता है कि किसी ने 4.0 में ikasDAL.dll लिखा है क्योंकि इसमें System.Xml.Linq आदि जैसी चीजों पर निर्भरता है जो 2.0 ढांचे में मौजूद नहीं थी।

सभी उपस्थितियों से मैं कहूंगा कि किसी ने कृत्रिम रूप से ikasDAL.dll को 2.0 के नीचे सेट किया है, यह समझने के बिना कि यह किस पर निर्भर करता है। यदि यह मामला है, तो मुझे लगता है कि आपको एक बड़ी समस्या है।

वैकल्पिक रूप से, ikasDAL को हाल ही में 4.0 पर सेट किया गया था और आपने इसे 2.0 पर रीसेट कर दिया है लेकिन इसकी निर्भरता को ठीक नहीं किया है।


मैं बिन निर्देशिका के सभी की एक पुस्तिका स्वच्छ (मूल रूप से उन्हें हटा दें) करके शुरू कर दूं। फिर मैं यह सुनिश्चित करने के लिए प्रत्येक व्यक्तिगत प्रोजेक्ट को देखता हूं कि यह वास्तव में 2.0 पर सेट है। आखिरकार, जब तक मैं किसी समस्या का सामना नहीं करता तब तक मैं प्रत्येक परियोजना को एक समय में एक साथ बनाउंगा।