2012-07-09 25 views
5

पर्यावरण:NANT 0.92 एसडीके 7 नहीं मिला

विंडोज 2008 R2 64Bit एसडीके सेल्सियस पर स्थापित: \ Program Files (x86) \ माइक्रोसॉफ्ट SDKs \ Windows \ v7.1

फ्रेमवर्क सेल्सियस पर स्थापित : \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319

कुछ नेट 4 वर्गों को संकलित करने के Nant को चलाने के लिए कोशिश कर रहा है और हम निम्न संदेश मिल रहा है।

The SDK for the 'net-4.0' framework is not available or not configured.: 

      NAnt.Core.BuildException: The SDK for the 'net-4.0' 
framework is not available or not configured. 
       at NAnt.Core.Tasks.ExternalProgramBase.DetermineFilePath() 
       at NAnt.Core.Tasks.ExternalProgramBase.get_ProgramFileName() 
       at 
NAnt.Core.Tasks.ExternalProgramBase.PrepareProcess(Process process) 
       at NAnt.Core.Tasks.ExternalProgramBase.StartProcess() 
       at NAnt.Core.Tasks.ExternalProgramBase.ExecuteTask() 
       at NAnt.Core.Task.Execute() 
       at NAnt.Core.Target.Execute() 
       at NAnt.Core.Project.Execute(String targetName, Boolean 
forceDependencies) 
       at NAnt.Core.Project.Execute() 
       at NAnt.Core.Project.Run() 

NANt.exe.config को देखकर यह जाहिर होता है कि यह एसडीके के लिए लागू पथ को खोजने के लिए रजिस्ट्री करने के लिए लग रहा है में।

<project> 
<readregistry 
    property="installRoot" 
     key="SOFTWARE\Microsoft\.NETFramework\InstallRoot" 
     hive="LocalMachine" /> 
<locatesdk property="sdkInstallRoot" 
minwinsdkver="v7.0A" minnetfxver="4.0" maxnetfxver="4.0.99999" 
failonerror="false" /> 
</project> 

कुंजी रजिस्ट्री में मौजूद नहीं है और न ही हमारे SDK संस्करण minwinsdkver = "v7.0A"

किसी को भी इस मुद्दे में चलाने से मेल खाता है और एक वैध काम के आसपास पाया?

+0

रजिस्ट्री कुंजियों को वहाँ नहीं कर रहे हैं, है न कि NAnt एक SDK स्थापना मुद्दे के बजाय का अधिक:

  • निम्न कमांड चलाएं? –

  • +0

    64 बिट मशीन पर, मेरा 7.1 एसडीके इस पर स्थापित है: सी: \ प्रोग्राम फ़ाइलें \ माइक्रोसॉफ्ट एसडीके \ विंडोज \ v7.1 (प्रोग्राम फाइलों (x86) पर नहीं) शायद यह समस्या है? –

    उत्तर

    1

    सरल समाधान रजिस्ट्री में कुंजी जोड़ना है।

    मेरे लिए रजिस्ट्री प्रविष्टि थोड़ा अलग थी: HKEY_LOCAL_MACHINE \ सॉफ़्टवेयर \ Microsoft.NETFramework सेट sdkInstallRootv2.0 = C: \ Program Files \ Microsoft SDKs \ Windows \ v7.0A पर।

    इस नेंट के बाद अपेक्षाकृत ठीक संकलित किया गया।

    0

    मैं कल इस मुद्दे में भाग गया। एक और कामकाज एनएएनटी निष्पादन योग्य 32 बिट के रूप में चिह्नित करना है।

    1. खुला एक डेवलपर कमांड प्रॉम्प्ट
    2. निर्देशिका है कि आपके NAnt निष्पादन शामिल करने के लिए बदलें। corflags NAnt.exe/32 बिट +