टीम शहर की आवश्यकता: MSBuildTools12.0_x86_Path मौजूद है


117

मेरे पास X32 Server2008 विंडोज़ मशीन पर एक टीमसिटी स्थापित है। मैंने .net 4.5 वेब इंस्टॉल चलाया है। मैंने इस लेख के आधार पर अपनी x64 मशीन से फ़ाइलों पर भी प्रतिलिपि बनाई है, ताकि मुझे vs2012 स्थापित करने की आवश्यकता न हो (हालांकि, मेरे पास 32 बिट मशीन पर x86 को हटाने के लिए पथ परिवर्तन था):

दृश्य स्टूडियो 2012 समाधान की टीमसिटी में MSBuild

मैं बनाने के लिए स्थानीय एजेंट प्राप्त करने के लिए प्रतीत नहीं कर सकते हैं कि मैं एक vs2012 या vs2010 परियोजना पर msbuild के लिए सेटअप किया है। मैं मिलता रहा:

अनिश्चित आवश्यकताएं: MSBuildTools12.0_x86_Path मौजूद हैं

मैंने कई बार सर्वर को पुनरारंभ किया है, और एजेंट को भी पुनरारंभ किया है। मैंने पथ चर के साथ थोड़ा गड़बड़ करने की कोशिश की है, लेकिन यह पता नहीं लगा सकता कि मैं क्या याद कर रहा हूं। मैंने कॉन्फ़िगरेशन पैरामीटर में भी देखा है, और इन्हें देख सकते हैं:

MSBuildTools2.0_x86_Path C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727

MSBuildTools3.5_x86_Path C: \ Windows \ Microsoft.NET \ Framework \ v3.5

MSBuildTools4.0_x86_Path C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319

मुझे वहां 12.0 कैसे मिलेगा?


क्या आपको अभी भी TeamCity की समस्या है?
डैनियल हॉलिनरेके

मुझे यह पता लगाने के लिए जितना समय लगा, उतने समय के लिए मुझे प्रोजेक्ट पर रोक लगाने की जरूरत थी। मैं वसंत में इसे वापस पाने की उम्मीद करता हूं।
अर्चनागेल76

मुझे यह सब करने में थोड़ा समय लगा। मुझे लगता है कि इसका सार MSBuild स्थापित कर रहा था और हालांकि Web Deploy को अपडेट कर रहा था।
डैनियल हॉलिनरेके

जवाबों:


149

मुझे अलग से MSBuild स्थापित करने की आवश्यकता थी, फिर एजेंट को पुनरारंभ करने के बाद चर था।

(MSDN आलेख से) MSBuild अब .NET Framework के भाग के बजाय Visual Studio के भाग के रूप में स्थापित है। वर्तमान MSBuild संस्करण संख्या 12.0 है। यदि आप MSBuild को अलग से स्थापित करना चाहते हैं, तो MSBuild डाउनलोड से अधिष्ठापन पैकेज डाउनलोड करें।

संपादित करें: उत्तर लिंक टूट गया था। यहाँ Microsoft बिल्ड टूल्स 2015 (आज तक के सबसे हाल ही में) के लिए लिंक दिया गया है: https://www.microsoft.com/en-us/download/details.aspx?id=48159


8
यह ध्यान दिया जाना चाहिए कि आपको MSBuild12.0 को स्थापित करने के लिए .NET फ्रेमवर्क संस्करण 4.5.1 (यहाँ पाया गया: microsoft.com/en-ca/download/details.aspx?id=40779 ) की आवश्यकता होगी।
ब्रैंडन

37
एजेंट को पुनरारंभ करने के लिए: 1. बिल्ड सर्वर पर जाएं। 2. प्रारंभ मेनू से services.msc चलाएं। 3. टीमसिटी एजेंट ढूंढें, सेवा बंद करें, और इसे पुनरारंभ करें। सीज़नस टीम वेट्स के लिए यह स्पष्ट प्रतीत हो सकता है, लेकिन पहली बार अपने जैसे उपयोगकर्ताओं को नहीं। :)
चैम एलियाह

5
हालाँकि मेरे पास MS Build Tools 2013 स्थापित है, MSBuildTools12.0_x86_Path चर अभी भी सेट नहीं है और एजेंट नहीं चलता है। क्या इसे मैन्युअल रूप से सेट करने का कोई तरीका है?
bdaniel7

इस निर्देशिका में जाना था, और vcvars64.bat को चलाना: C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ bin \ amd64 फिर msbuild ने मेरे लिए काम किया।
user8128167

5
डिफ़ॉल्ट रूप से जब मैंने sln फ़ाइल का स्वत: पता लगा लिया और मेरा समाधान Visual Studio 2013 में सेट हो गया। मैंने एजेंट पर स्थापित Visual Studio 2015 के लिए परिवर्तन किया।
ptittof57

33

थोड़ा देर से जवाब, लेकिन अगर आपका प्रोजेक्ट वीएस 2012 से है, और आप ऑटोडेटेड सॉल्यूशन फ़ाइल बिल्ड स्टेप का उपयोग कर रहे हैं, तो उस स्टेप को एडिट करके "विजुअल स्टूडियो" ड्रॉप डाउन से "माइक्रोसॉफ्ट विजुअल स्टूडियो 2012" चुन कर इस समस्या को हल करता है साथ ही (और, IMHO, अधिक सही ढंग से)।


2
देर बिलकुल नहीं! मेरा आज यह मुद्दा था और वीएस संस्करण को वीएस 2015 में बदलने से अपरिहार्य आवश्यकताओं के संदेश से छुटकारा मिल गया
सुधांशु मिश्रा

यह मेरे लिए नए सर्वर TeamCity 10 VS2015 (पुराना 2013 प्रोजेक्ट था) के लिए काम किया
रिप्पो

2
हाँ, मेरी समस्या यह थी कि विज़ुअल स्टूडियो का गलत संस्करण टीम सिटी द्वारा "ऑटो-सेलेक्टेड" था, जब "URL से प्रोजेक्ट बनाएँ" विकल्प से ऑटो-डिटेक्ट चरणों का चयन करें, तो मैं बस बिल्ड स्टेप पर गया और बदल गया इसे ठीक करने के लिए विजुअल स्टूडियो संस्करण। मुझे उम्मीद है कि लोग जेम के जवाब में आपकी ज़रूरत के सामान को स्थापित करने से पहले अपने उत्तर की जांच करेंगे।
स्ट्रैंडेन्डेलिकेल

18

मुझे एक ही समस्या थी और अंत में यह पता चला कि MSBuild को चलाने के लिए मेरा परिभाषित बिल्ड कदम गलत तरीके से कॉन्फ़िगर किया गया था।

मेरे MSBuild बिल्ड स्टेप में सेटिंग "MSBuild ToolsVersion" को 12.0 (डिफ़ॉल्ट) पर सेट किया गया था, जो मेरे सिस्टम पर "Unmet आवश्यकताएँ: MSBuildTools12.0_x86_Path मौजूद है" त्रुटि का कारण बनता है। क्योंकि मुझे अपने निर्माण को चलाने के लिए नए MSBuild 12.0 की आवश्यकता नहीं है, मैंने इस सेटिंग को अपने बिल्ड चरण में 4.0 में बदल दिया है। यह MSBuild संस्करण मेरे सिस्टम पर सही ढंग से स्थापित है। इससे मेरे लिए समस्या हल हो गई।


10

मुझे पार्टी में थोड़ी देर हो गई है, लेकिन मुझे लगा कि मैं निम्नलिखित मामले को साझा करूंगा क्योंकि यह किसी भी गरीब आत्मा की मदद करता है।

  • मुझे नए Windows Server 2012 R2 बॉक्स पर TeamCity 8.1.4 की एक नई स्थापना पर उपर्युक्त त्रुटि मिली
  • इस सूत्र में दिए गए निर्देशों का पालन किया गया और कई पुनरारंभों और पुर्नस्थापनाओं के बावजूद त्रुटि अभी भी दिखाई दी।
  • मैंने देखा कि एजेंट विवरण जैसे OS और CPU एजेंट विवरण पृष्ठ पर दिखाई नहीं दे रहे थे। यह इंगित करता है कि समस्या .NET और MSBUILD पूर्वापेक्षाओं के साथ नहीं थी, लेकिन इसके बजाय एजेंट सेवा से संबंधित थे जो मशीन के बारे में जानकारी पढ़ने में सक्षम नहीं थे।
  • एजेंट एक उपयोगकर्ता के खाते में चल रहा था ( TeamCity प्रलेखन के अनुसार सभी आवश्यक अनुमतियों के साथ )। लेकिन मुझे लगा कि अगर मैं एडमिन टूल> सर्विसेज में गया और लॉग ऑन लोकल सिस्टम अकाउंट में बदल गया तो मैं देखूंगा कि क्या होगा।
  • एजेंट सेवा को फिर से शुरू किया।
  • महान सफलता।

स्थानीय सेवा के रूप में चलाने के लिए एजेंट को बदलना मेरे लिए भी यह समस्या तय करता है। मुझे समझ में नहीं आता क्यों यद्यपि। मैंने उस उपयोगकर्ता को जोड़ा जो मैं स्थानीय व्यवस्थापक समूह का उपयोग कर रहा था यह देखने के लिए कि क्या यह एक अनुमति समस्या थी, लेकिन इससे कोई मदद नहीं मिली;
user381624

8

MSBuild अब Visual Studio का हिस्सा है। यदि आपको अपने एजेंट पर बिल्ड टूल इंस्टॉल करने की आवश्यकता है, लेकिन वीएस इंस्टॉल नहीं करना चाहते हैं, तो आपको नए Microsoft बिल्ड टूल को स्थापित करने की आवश्यकता होगी जो http://www.microsoft.com/en-us/download/ पर उपलब्ध है । details.aspx? id = 40760


1
इसे भी देखें: बिल्ड टूल्स 2015 संस्करण के लिए लिंक (उल्लेखित लिंक 2013 उपकरण है)।
जीरोेन

और यहां 2017 संस्करण है (टूल्स फॉर विजुअल स्टूडियो 2017 -> बिल्ड टूल्स फॉर विजुअल स्टूडियो 2017)
fuglede

5

मेरे मामले में - VS2013 के लिए MSBuild की केवल अलग स्थापना से मदद मिली। (यहां लिंक है - https://www.microsoft.com/en-us/download/confirmation.aspx?id=40760 ) इसने इस फ़ोल्डर को C:\Program Files (x86)\MSBuild\12.0बनाया MS VS05 के लिए MSBuild टूल की स्थापना ने C:\Program Files (x86)\MSBuild\14.0इस फ़ोल्डर को बनाया , और TC नहीं चाहता था इसका इस्तेमाल करें।


2

मेरे माध्यमिक बिल्ड एजेंट पर मुझे यह समस्या थी।

मैंने MSBuild फ़ोल्डर को प्राथमिक बिल्ड एजेंट पीसी से माध्यमिक बिल्ड एजेंट पीसी में कॉपी किया था (जैसे मैंने कुछ विज़ुअल स्टूडियो फ़ाइलों के साथ यहां वर्णित है: MSBuild टीम विजुअल स्टूडियो 2012 समाधान में MSBuild स्थापित करने के बजाय)।

हालांकि, ऐसा लगता है कि टीमसिटी एजेंट सेवाएं MSBuild प्रविष्टियों के लिए रजिस्ट्री की जांच करती हैं जब यह शुरू होती है (यह ऊपर वर्णित विज़ुअल स्टूडियो फ़ाइलों के साथ ऐसा नहीं लगता है)। चूँकि मैंने अन्य पीसी से फ़ाइलों की प्रतिलिपि बनाई थी, इसलिए v। 12.0 के लिए कोई MSBuild प्रविष्टि मौजूद नहीं थी, इसलिए TeamCity ने MSBuild फ़ाइलों की खोज नहीं की, भले ही वे प्रोग्राम फाइल्स (x86) \ MSBuild फ़ोल्डर में मौजूद थे।

जब मैंने http://www.microsoft.com/en-us/download/details.aspx?id=40760 से ऊपर के लिंक से Microsoft बिल्ड टूल स्थापित किया था TeamCity ने रजिस्ट्री में v। 12.0 प्रविष्टि पाई और एजेंट सक्षम था। प्राथमिक एजेंट के रूप में एक ही परियोजनाओं का निर्माण।

MS Build टूल इंस्टॉल करने के बाद TeamCity एजेंट सेवा को पुनरारंभ करना याद रखें।


1

मेरे मामले में मेरे पास Windows 2016 सर्वर पर TeamCity Professional 2018.1 है। मैंने यहां से Visual Studio 2017 के लिए Build Tools डाउनलोड किया : https://visualstudio.microsoft.com/downloads/ और बिल्ड टूल्स के लिए सभी विकल्पों का चयन किया। स्थापित करने के बाद मैंने MSBuild को वैश्विक PATH पर्यावरण चर में जोड़ा। C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Bin मेरे मामले में।


0

मेरे मामले में, यह दृश्य स्टूडियो स्थापित किए बिना एक नई मशीन थी और मैंने सिर्फ दूसरी मशीन से टीमसिटी को बहाल किया। इसलिए मैंने दृश्य स्टूडियो 2013 स्थापित किया है और टीमसिटी एजेंट की समस्या हल की है।


0

जैसा कि ऊपर कहा गया था, ऑटोडेट बिल्ड बिल्ड कदम शायद गलत विज़ुअल स्टूडियो संस्करण उठाया गया है। बिल्ड कॉन्फ़िगरेशन सेटिंग्स पेज पर बिल्ड स्टेप्स सेक्शन के तहत विजुअल स्टूडियो ड्रॉपडाउन का उपयोग करके इसे बदलें :

यहां छवि विवरण दर्ज करें


-1

मैं रजिस्ट्री में जाकर इस समस्या को हल करने के लिए लग रहा था और MSBuild के लिए सभी प्रविष्टियों को हटाकर जो कि संस्करण 12 के लिए नहीं थे, फिर एजेंट को फिर से शुरू किया।

ऐसा करने के लिए, Start> रन पर जाएं और Regedit टाइप करें

फिर कुंजी पर नेविगेट करें:

HKEY_LOCAL_MACHINE> सॉफ़्टवेयर> Microsoft> MSBuild

12.0 को छोड़कर सभी संस्करणों को हटा दें।

ToolVersions के अगले स्तर पर जाएं और वहां गैर-12.0 संस्करण हटाएं।


1
यह एक बुरा विचार है, आपको CI / CD में आखिरी चीज जो रजिस्ट्रियों के साथ
खेलनी चाहिए
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.