MSBuild
محرك بناء مايكروسوفت ، أو MSBuild ، [ 2 ] [ 3 ] هو مجموعة من أدوات البناء المجانية والمفتوحة المصدر للتعليمات البرمجية المُدارة ضمن البنية التحتية للغة المشتركة، بالإضافة إلى التعليمات البرمجية الأصلية بلغة C و C++ . تم إصداره لأول مرة في عام 2003 وكان جزءًا من إطار عمل .NET . يأتي MSBuild مُضمنًا مع Visual Studio ، ولكن يمكن تشغيله أيضًا بشكل مستقل من خلال واجهة سطر الأوامر الخاصة به . [ 4 ]
ملخص
MSBuild هي أداة بناء تُساعد على أتمتة عملية إنشاء منتج برمجي، بما في ذلك تجميع الشفرة المصدرية ، والتغليف ، والاختبار، والنشر ، وإنشاء الوثائق. باستخدام MSBuild، يُمكن بناء مشاريع وحلول Visual Studio دون الحاجة إلى تثبيت بيئة تطوير Visual Studio المتكاملة (IDE) . MSBuild مجانية ومفتوحة المصدر . [ 5 ] كانت MSBuild مُدمجة سابقًا مع .NET Framework ؛ ولكن بدءًا من Visual Studio 2013 ، أصبحت مُدمجة مع Visual Studio. [ 6 ] تُعد MSBuild بديلًا وظيفيًا لأداة nmake ، التي لا تزال تُستخدم في المشاريع التي نشأت في إصدارات Visual Studio الأقدم.
يعمل MSBuild على ملفات مشاريع MSBuild التي تشترك في بنية XML مشابهة لـ Apache Ant أو NAnt . على الرغم من أن البنية تعتمد على مخطط XML محدد جيدًا ، إلا أن الهيكل الأساسي والعملية قابلة للمقارنة مع أداة make التقليدية في أنظمة Unix : يحدد المستخدم ما سيتم استخدامه (عادةً ملفات التعليمات البرمجية المصدرية) وما يجب أن تكون عليه النتيجة (عادةً مكتبة ثابتة أو DLL أو تطبيق قابل للتنفيذ)، لكن الأداة نفسها هي التي تقرر ما يجب فعله وترتيب تنفيذ عملية البناء.
يُمكن لـ MSBuild إنشاء مشروع باستخدام إصدار مُختار من إطار عمل .NET المدعوم. تُسمى هذه الميزة "الاستهداف المتعدد". مع ذلك، لا يُمكن لأي عملية بناء للمشروع استهداف سوى إصدار واحد من إطار العمل في كل مرة. [ 7 ]
تاريخ
تم إنشاء MSBuild لأول مرة في عام 2003 بهدف استهداف .NET Framework 2.0 لاستخدامه في Visual Studio 2005 (الاسم الرمزي Whidbey) [ 8 ] و Windows Vista (الاسم الرمزي Longhorn). [ 9 ] [ 10 ]
الإصدارات
| إصدار | إطار عمل .NET | إصدار Visual Studio | مواقع التثبيت المعتادة (x86) [ 11 ] |
|---|---|---|---|
| 2.0 | 2.0 | 2005 | C:\Windows\Microsoft.NET\Framework\v2.0.50727 |
| 3.5 | 3.5 | 2008 | C:\Windows\Microsoft.NET\Framework\v3.5 |
| 4.7.3062.0 | 4.0 | 2010 | C:\Windows\Microsoft.NET\Framework\v4.0.30319 |
| 4.8.3761.0 | 4.5.2 | 2012 | C:\Windows\Microsoft.NET\Framework\v4.0.30319 |
| 12.0 [ 6 ] | 4.5.2 | 2013 | C:\Program Files (x86)\MSBuild\12.0\Bin |
| 14.0 | 4.6 | 2015 | C:\Program Files (x86)\MSBuild\14.0\Bin |
| 15.0 [ 12 ] | 4.7 | 2017 |
|
| 16.0 [ 13 ] | 4.7.2 | 2019 |
|
| 17.0 [ 14 ] | 2022 |
| |
| 18.0 | 2026 |
|
مصطلحات
- هدف
- يحتوي الهدف على مجموعة من المهام التي يُنفذها MSBuild. وينصب تركيز MSBuild على هدف النتيجة المُحدد عند استدعاء MSBuild مع ملف المشروع. وذلك لأن المشروع قد يحتوي على عدة أهداف ، يُنفذ كل منها بالتسلسل (وبشكل مشروط). تُنفذ الأهداف التابعة اللاحقة قبل الهدف المطلوب. ويمكن توجيه مسار تنفيذ الهدف الحالي باستخدام السمات التالية: الشرط، والأهداف السابقة، والأهداف اللاحقة، والأهداف التابعة. قد يكون كل هدف مكتفيًا بذاته، ويحتوي على المهام اللازمة لإكماله. وعادةً ما يكون الهدف إجراءً يُنفذ على ملف أو مجموعة ملفات أو دليل.
- مهمة
- المهمة هي أمر يُنفذ لإكمال هدف. تُستخدم المهام لتجميع وتنفيذ أي عدد من الإجراءات أثناء عملية البناء. تُنفذ عادةً في تجميعة .NET كفئة ترث من فئة Task أو تُطبق واجهة ITask. تُوفر العديد من المهام الأساسية كجزء من إطار عمل .NET، [ 15 ] كما تتوفر المهام المطورة من قِبل المجتمع مجانًا. تتضمن بعض أمثلة المهام نسخ الملفات، وإنشاء الدلائل، وتحليل XML.
- الخصائص والعناصر
- يُوفر MSBuild خاصيتيّ الخصائص والعناصر ، وهما مكافئتان من حيث المفهوم لوحدات الماكرو في أداة make . تُحدد الخصائص قيمًا ثابتة، بينما تُستخدم العناصر عادةً لتحديد مجموعات من الملفات أو المجلدات التي تُنفذ عليها المهام. ويُسهل دعم الأحرف البديلة تحديد الملفات في العناصر.
انظر أيضاً
مراجع
- ↑ "أحدث إصدار" . Microsoft/msbuild. GitHub . Microsoft . تم الاسترجاع في 2022-08-20 .
- ↑ "microsoft/msbuild: محرك بناء مايكروسوفت (MSBuild) هو منصة البناء لـ .NET وVisual Studio" . GitHub . مايكروسوفت . تم الاطلاع عليه بتاريخ 23 يوليو 2019 .
- ↑ هاشمي، سيد إبراهيم؛ بارثولوميو، ويليام (2009). داخل محرك بناء مايكروسوفت: استخدام MSBuild وTeam Foundation Build . مطبعة مايكروسوفت. ص 406. ISBN 978-0-7356-2628-7.
- ↑ "MSBuild" . MSBuild. وثائق مايكروسوفت . تم الاطلاع عليه بتاريخ 23-07-2019 .
- ↑ لاندر، ريتش (18 مارس 2015). "محرك MSBuild أصبح الآن مفتوح المصدر على GitHub" . مدونة .NET. مدونات MSDN . مايكروسوفت . تم الاطلاع عليه بتاريخ 23 يوليو 2019 .
- 12"What's new in MSBuild 12.0". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
- ↑"MSBuild multitargeting overview". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
- ↑"Building, Testing, and Deployment". What's New in Visual Studio 2005. MSDN. Microsoft. Archived from the original on 2014-08-26.
- ↑Sneath, Tim (July 19, 2004). "MSBuild: The New Build System for Visual Studio 2005 and Longhorn". Tim Sneath. MSDN Blogs. Retrieved 2018-04-22.
- ↑England, Chuck (February 25, 2010). "Getting Started with MSBuild". The Visual Studio Blog. MSDN Blogs. Retrieved 2018-04-22.
- ↑"Standard and custom Toolset configurations". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
- ↑"What's new in MSBuild 15". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
- ↑"What's new in MSBuild 16.0". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
- ↑"What's new in MSBuild 17". MSBuild. Microsoft Docs. Retrieved 2026-04-08.
- ↑"MSBuild task reference". MSBuild. Microsoft Docs. Retrieved 2019-07-23.
Further reading
- Kretzler, Brian (2011). MSBuild Trickery: 99 Ways to Bend the Build Engine to Your Will. K Cross Seven Ranch Company. p. 426. ISBN 978-0-615-50907-5.
- Hashimi, Sayed Ibrahim (June 2006). "Inside MSBuild: Compiling Apps With Custom Tasks For The Microsoft Build Engine". MSDN Magazine. Microsoft. Archived from the original on 11 April 2015. Retrieved 11 April 2013.
- Hashimi, Sayed Ibrahim (March 2007). "WiX Tricks: Automate Releases With MSBuild And Windows Installer XML". MSDN Magazine. Microsoft. Retrieved 11 April 2013.
- Hashimi, Sayed Ibrahim (February 2009). "MSBuild: Best Practices For Creating Reliable Builds, Part 1". MSDN Magazine. Microsoft. Retrieved 11 April 2013.
- هاشمي، سيد إبراهيم (مارس 2009). "MSBuild: أفضل الممارسات لإنشاء إصدارات موثوقة، الجزء 2" . مجلة MSDN . مايكروسوفت . تم الاطلاع عليه بتاريخ 11 أبريل 2013 .
- ريف ، أندرياس (10 يونيو 2010). "Einführung in Microsofts Build-Management-Technik MSBuild" [ مقدمة إلى تقنية إدارة البناء من Microsoft، MSBuild ] . مطور heise (باللغة الألمانية). هاينز هايز . تم الاسترجاع 11 أبريل 2013 .
- جونز، مايك؛ وارن، جينيفيف؛ بلوم، مايك؛ روبرتسون، كولين؛ هوغنسون، غوردون؛ كاي، سايسانغ (4 نوفمبر 2016). "إطار عمل MSBuild المستهدف والمنصة المستهدفة" . MSBuild. وثائق مايكروسوفت . تم الاسترجاع في 19 فبراير 2018 .
روابط خارجية
- أتمتة البناء
- أدوات التجميع
- برامج مايكروسوفت المجانية
- مايكروسوفت فيجوال ستوديو
- برنامج مرخص بموجب ترخيص MIT
- برنامج 2003
