2009-03-28 12 views
8

मैंने prior प्रश्न और उत्तर देखा है। उस प्रश्न में, मूल पोस्टर ने एक फॉलोअप प्रश्न पूछा:एमएसबिल्ड उपलब्ध होने पर मैं नंत का उपयोग क्यों जारी रखना चाहूंगा?

msbuild का उपयोग करने के लिए अनिवार्य कारण क्या हैं? वहाँ विपक्ष हैं?

मुझे इसका जवाब नहीं मिला। मैं भी बातचीत को जानना चाहता हूं। नंत की आकर्षक विशेषताएं क्या हैं?

मुझे लगता है, नेंट के लिए, क्रॉस-प्लेटफ़ॉर्म बड़ा है। एमएसबिल्ड के लिए, यह विजुअल स्टूडियो के साथ मुद्रा और एकीकरण है। क्या यह सही लगता है? और कुछ?

संपादित/जोड़ा गया: किसी के पास सुविधा सूची तुलना है? किसी ने कहा "नंत में बॉक्स से अधिक सुविधाएं हैं।" कौन सा?

क्या इन परियोजनाओं को गठबंधन करने के लिए समझदारी होगी, प्रयासों को गठबंधन करने के लिए प्रयासों को गठबंधन करना? क्या किसी ने एमएस से पूछा है कि क्या वे वाईएसएक्स जैसे समुदाय में एमएसबिल्ड का योगदान करने के इच्छुक होंगे? कितनी संभावनाएं हैं?

EDIT2: मुझे अभी this prior discussion मिला है, मुझे यकीन नहीं है कि मुझे इससे पहले क्यों नहीं मिला।

+0

पुन: क्रॉस-प्लेटफ़ॉर्म - ध्यान दें कि मोनो csproj (msbuild) भी पढ़ेगा। –

+0

ओउओ, कूल। मोनो का निर्माण उपकरण है ...? – Cheeso

+0

क्षमा करें - मुझे फिर से वाक्यांश करना चाहिए था; * नंत * खुशी से एमएसबिल्ड फाइलों के साथ काम करेगा –

उत्तर

14

Nant बॉक्स से बाहर अधिक विशेषताएं हैं, लेकिन MSBuild एक बेहतर बुनियादी ढांचे (आइटम मेटाडाटा चट्टानों) जो यह बहुत आसान पुन: प्रयोज्य MSBuild स्क्रिप्ट का निर्माण करने के लिए बनाता है है।

एमएसबिल्ड को समझने में कुछ समय लगता है, लेकिन एक बार ऐसा करने के बाद यह बहुत अच्छा होता है।

सीखना सामग्री:

+1

मेरे पास बिल्कुल विपरीत अनुभव था। मैंने MSBuild स्क्रिप्ट भ्रमित और NANT स्क्रिप्ट सहज ज्ञान युक्त पाया। मैं सुझाव दूंगा कि लोग अपने लिए औजारों की तुलना करें और अपने निष्कर्ष निकालें। – TrueWill

2

आप जारी रहेगा नंत का उपयोग कर क्योंकि आप पहले से ही इसका उपयोग कर रहे हैं। यदि आप msbuild का उपयोग कर रहे थे, और जानना चाहते थे कि आप नैन पर क्यों स्विच करेंगे, तो जवाब स्विच करने का कोई वास्तविक कारण नहीं है। कम से कम आप जानते हैं कि एमएसबिल्ड किसी भी तरह से नहीं जा रहा है, नैन को दिसंबर 2007 से अपडेट नहीं किया गया है।

2

यह मानते हुए कि NANT जावा के लिए चींटी से बाहर है, कि इसके साथ चिपकने के लिए पर्याप्त कारण हो सकता है। अन्य निर्माण उपकरण एंटी-फ़िंग पर आधारित हैं, PHP के लिए एक है। जब मैंने उस टूल का उपयोग शुरू किया, तो मैंने इसे किसी भी समय उठाया क्योंकि मैं पहले से ही एनएएनटी से परिचित था।

1

हम एक संकर दृष्टिकोण का उपयोग करते हैं क्योंकि एमएस-बिल्ड उपलब्ध होने से पहले हमने एनएनटी पर शुरुआत की थी। हालांकि एमएस-बिल्ड सीएनए उन परियोजनाओं पर समानांतर बोलियां करती हैं जो निर्भर नहीं हैं जो सही परिस्थितियों में आपके निर्माण के समय को काफी कम कर सकती हैं। एनएनटी को एसवीएन, तैनाती के साथ बातचीत करने और केवल एमएस-बिल्ड करने के संकलन के साथ हमारे निर्माण समय को लगभग 45% वाईएमएमवी में कटौती करने के आधार पर छोड़कर आप अपने स्लोन को कैसे बनाते हैं।

2

मुझे बस उपयोग करने के लिए आसान नहीं लगता है। मुझे हिम्मत है कि यह आंशिक रूप से चींटी में मेरी पृष्ठभूमि के कारण है, लेकिन मुझे प्रोटोकॉल बफर के लिए एक NAnt फ़ाइल बनाने के लिए MiscUtil के लिए एक MSBuild फ़ाइल बनाने से सरल काम मिल गया।(अब भी MiscUtil निर्माण में चीजें हैं जिन्हें मैं शामिल करना चाहता हूं लेकिन नहीं कर सकता - ऐसा लगता है कि किसी कार्य को आउटपुट को टेक्स्ट फ़ाइल, आईआईआरसी में डंप करना मुश्किल लगता है।) अवधारणाएं सरल हैं, और ऐसा प्रतीत होता है फ़ाइल संग्रह का मूल्यांकन आदि के मामले में कम गॉथस बनें।

मुझे वर्तमान में एक सेटअप का उपयोग करना पसंद है जिसे मैंने पहले सोचा था वास्तव में मूर्खतापूर्ण - मैं अपनी "मुख्य" बिल्ड फ़ाइल के लिए NANT का उपयोग करता हूं, लेकिन एमएसबिल्ड को वास्तविक " मेरी .NET परियोजना संकलित करें "चरण। एक ही परियोजना के लिए दो बिल्ड सिस्टम रखने का विचार घृणित है, लेकिन मैं मूल रूप से एमएसबिल्ड भाग को पूर्ण निर्माण प्रणाली के रूप में नहीं मानता - यह संकलन का एक आसान तरीका है, और मुझे कभी भी प्रोजेक्ट फ़ाइल की जांच करने की आवश्यकता नहीं है। (मैं केवल विजुअल स्टूडियो के माध्यम से इसके साथ बातचीत करता हूं।) मैं अपने प्रोटोकॉल बफर को इस तरह से आसानी से विकसित करने में सक्षम हूं, और मुझे संदेह है कि अगर मैं एमएसबिल्ड का उपयोग करता तो मुझे वही अनुभव होता।

जल्द ही मैं यह सब मोनो (जब 2.4 जारी किया गया है - जब तक फिर वहाँ gmcs में पुरुष सजाया कर रहे हैं) के साथ निर्माण की कोशिश करने जा रहा हूँ और इस बिंदु पर हम रणनीति है कैसे पोर्टेबल देखेंगे ...

+0

यह कैसे चला गया? तीन साल, आप बिल्ड सिस्टम के बारे में कैसा महसूस करते हैं? क्या आप अभी भी "नॉट के अंदर msbuild" की सिफारिश करेंगे? – Weeble

+0

@Weeble: प्रोटोकॉल बफर के लिए, अब हम पूरी तरह से एमएसबिल्ड का उपयोग कर रहे हैं - लेकिन मैं स्पष्ट रूप से बिल्ड सिस्टम को समझ नहीं पा रहा हूं। नोडा समय के लिए मैं वास्तव में * एक निर्माण प्रणाली भी नहीं है। मैंने psake के बारे में अच्छी चीजें देखी हैं, और कुछ समय के साथ पकड़ने की जरूरत है ... –

1

कुछ अंक जो मन में आया था:

  • आप MSBuild का उपयोग करना चाहिए यदि आप Windows कार्यप्रवाह फाउंडेशन के साथ काम कर रहे हैं (* .xoml फ़ाइलें संकलन, शायद यह भी WPF के लिए सच है)
  • यदि आप सेटअप के निर्माण के लिए wix उपयोग कर रहे हैं .msi फ़ाइल आप विजुअल स्टूडियो या msbuild का उपयोग विक्स स्क्रिप्ट को संकलित करने के लिए कर सकते हैं (एरो के मामले में आर वीएस विक्स स्क्रिप्ट में समस्याग्रस्त रेखा पर जा सकता है)
  • एमएसबिल्ड आपको विकास/दृश्य स्टूडियो पर्यावरण के समान वातावरण बनाने की अनुमति देता है (उदाहरण के लिए जब एमएसबिल्ड पोस्टबिल्ड घटनाओं के साथ निर्माण निष्पादित किया जाता है, तो आपको मैन्युअल रूप से बनाए रखने की आवश्यकता नहीं है

मैं हम वर्तमान में NAntContrib से msbuild कार्य के साथ NAnt स्क्रिप्ट का उपयोग कर रहे हैं कहाँ काम सीएससी कार्य करने के लिए * के .cs फ़ाइलों एक सूची, ...)।

संबंधित मुद्दे