2012-09-11 9 views
5

के साथ विफल .NET 4.5 के साथ Visual Studio 2012 स्थापित करने के बाद मैं थोड़ी देर के MSBuild का उपयोग कर निर्माण निम्न त्रुटियों पाने के लिए शुरू कर दिया:MSBuild त्रुटि msb4064 और msb4063

  • त्रुटि MSB4064:

"जेडेट रिसोर्स" पैरामीटर द्वारा "SdkToolsPath" पैरामीटर समर्थित नहीं है। कार्य पर मौजूद पैरामीटर सत्यापित करें, और यह एक सेटटेबल सार्वजनिक इंस्टेंस प्रॉपर्टी है।

  • त्रुटि MSB4063:

"GenerateResource" कार्य अपने इनपुट पैरामीटर के साथ आरंभ नहीं किया जा सकता है। परियोजना फ़ाइल शीर्षक इस प्रकार है:

<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> 

कोई भी विचार क्या परिवर्तन हो सकता है कि abover त्रुटियों का कारण में .NET 4.5 किए गए हैं?

उत्तर

0

मुझे एक ही समस्या है और पता चला है कि मैं बड़ी संख्या में संसाधन फ़ाइलों (If your build fails with “MSB6002: The command-line for the “ResGen” task is too long”) को संभालने के लिए परियोजनाओं में से एक में हैक का उपयोग कर रहा हूं।

कार्य के संस्करण 3.5 (GenerateResource Task) द्वारा समर्थित सभी विशेषताओं को हटाने के बाद मेरा निर्माण फिर से काम कर रहा है।

3

यह माइक्रोसॉफ्ट के साथ एक मुद्दा है। Common.targets फ़ाइल C: \ Windows \ Microsoft.Net \ v4.0.30319 में है। विजुअल स्टूडियो 2012 को स्थापित करने के बाद, यह फ़ाइल बदल दी गई है। किए गए परिवर्तनों में से एक जेनरेट रिसोर्सएमएस बिल्डिंगटाइम "फिक्सिंग" के साथ करना है, जहां कोई व्यक्ति अपनी मशीन को विंडोज 8 में अपग्रेड करता है (विवरण के लिए लाइन 2271 पर विस्तृत टिप्पणी पढ़ें)। मेरे दुविधा में Microsoft.Common.targets फ़ाइल

<GenerateResourceMSBuildRuntime 
    Condition="'$(GenerateResourceMSBuildRuntime)' == '' and 
       $([MSBuild]::DoesTaskHostExist(`$(TargetFrameworkAsMSBuildRuntime)`, `$(GenerateResourceMSBuildArchitecture)`))">$(TargetFrameworkAsMSBuildRuntime)</GenerateResourceMSBuildRuntime> 
1

निम्न पंक्ति बाहर टिप्पणी करने के लिए बस था वास्तव में एक बेहतर समाधान यदि आप वैकल्पिक हल बर्नार्ड अर्थात (If your build fails with “MSB6002: The command-line for the “ResGen” task is too long”) ने सुझाव दिया प्रदर्शन किया है। पूरी तरह से अपनी परियोजना फाइल से वर्कअराउंड को हटाने के लिए है। माइक्रोसॉफ्ट ने वास्तव में विजुअल स्टूडियो 2012 एसडीके उपकरणों के साथ इस कामकाज की आवश्यकता तय की है।

इस समस्या के बारे में discussion on connect देखें।