MSBuild - MSBuild
| Vývojáři | Microsoft |
|---|---|
| První vydání | 2003 |
| Stabilní uvolnění | v16.11.0 / 11. srpna 2021
|
| Úložiště | |
| Napsáno | C# |
| Operační systém | Cross-platform |
| Plošina | .NET Framework , .NET Core |
| Typ | Nástroj pro stavbu |
| Licence | Licence MIT |
| webová stránka |
docs |
Microsoft Build Engine , lépe známý jako MSBuild , je bezplatná a open-source sada sestavovacích nástrojů pro spravovaný kód i pro nativní kód C ++ a byla součástí .NET Framework . Visual Studio závisí na MSBuild, ale ne naopak. Správa životního cyklu aplikací Visual Studio závisí na MSBuild, aby prováděl sestavení týmu prostřednictvím serveru Azure DevOps Server .
Přehled
MSBuild je build nástroj, který pomáhá automatizovat proces vytváření softwarových produktů, včetně sestavování na zdrojový kód , obalů , testování, nasazení a tvorbu dokumentace. S MSBuild je možné stavět projekty a řešení Visual Studio bez nainstalovaného IDE sady Visual Studio . MSBuild je bezplatný a open-source . MSBuild byl dříve dodáván s .NET Framework ; počínaje Visual Studio 2013 je však místo toho součástí sady Visual Studio. MSBuild je funkční náhrada za nástroj nmake , který se nadále používá v projektech, které vznikly ve starších vydáních sady Visual Studio.
MSBuild působí na soubory projektu MSBuild, které mají podobnou syntaxi XML jako Apache Ant nebo NAnt . Přestože je syntaxe založena na dobře definovaném schématu XML, základní struktura a operace jsou srovnatelné s tradičním nástrojem Unix make : uživatel určuje, co bude použito (obvykle soubory zdrojového kódu) a jaký by měl být výsledek (typicky statický knihovna, knihovna DLL nebo spustitelná aplikace), ale obslužný program sám rozhodne, co má dělat, a v jakém pořadí sestavení provést.
MSBuild může stavět projekt na základě podporované verze .NET Framework, kterou si vyberete. Tato funkce se nazývá „multitargeting“. Jakákoli daná verze projektu však může současně cílit pouze na jednu verzi rámce.
Dějiny
Nástroj MSBuild byl poprvé vytvořen v roce 2003 a byl zaměřen na rozhraní .NET Framework 2.0 pro použití v aplikacích Visual Studio 2005 (kódové označení Whidbey) a Windows Vista (kódové označení Longhorn).
Verze
| Verze | .NET Framework | Verze Visual Studio | Obvyklá místa instalace (x86) |
|---|---|---|---|
| 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 | 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 | 4.7 | 2017 |
|
| 16.0 | 4.7.2 | 2019 |
|
Terminologie
- cílová
- Target obsahuje sadu úloh pro MSBuild vykonat. Fokus MSBuild je výsledek Target určený při vyvolání MSBuild se souborem projektu. Důvodem je, že projekt může obsahovat několik cílových položek, z nichž každý je spuštěn postupně (a podmíněně). Následně závislé cíle jsou provedeny před požadovaným cílem. Tok provedení současného cíl může být směrován pomocí následující atributy: stav, BeforeTargets, AfterTargets, & DependsOnTargets. Každý cíl může být soběstačný s nezbytnými úkoly k dokončení sám. Cíl je obvykle akce provedená se souborem, sadou souborů nebo adresářem.
- Úkol
- Úkol je příkaz, který je proveden s cílem dokončit cíl. Úkoly se používají ke seskupení a provedení libovolného počtu akcí během procesu sestavení. Obvykle jsou implementovány v sestavení .NET jako třída, která dědí ze třídy Task nebo implementuje rozhraní ITask. Mnoho základních úkolů je dodáváno jako součást rozhraní .NET Framework a úkoly vyvinuté komunitou jsou volně dostupné. Některé příklady úkolů zahrnují kopírování souborů, vytváření adresářů nebo analýzu XML.
- Vlastnosti a položky
- MSBuild poskytuje vlastnosti a položky , které jsou koncepčně ekvivalentní makrům make . Vlastnosti určují statické hodnoty, zatímco položky se obvykle používají k definování sad souborů nebo složek, na kterých se mají provádět úkoly. Specifikace souborů v položkách je usnadněna podporou zástupných znaků.
Viz také
Reference
Další čtení
- Kretzler, Brian (2011). MSBuild Trickery: 99 způsobů, jak ohnout Build Engine podle vaší vůle . K Cross Seven Ranch Company. p. 426. ISBN 978-0-615-50907-5.
- Hashimi, Sayed Ibrahim (červen 2006). „Inside MSBuild: Kompilace aplikací s vlastními úkoly pro Microsoft Build Engine“ . Časopis MSDN . Microsoft. Archivovány od originálu dne 11. dubna 2015 . Citováno 11. dubna 2013 .
- Hashimi, Sayed Ibrahim (březen 2007). „Triky WiX: Automatizace verzí pomocí XML instalačního programu MSBuild a Windows“ . Časopis MSDN . Microsoft . Citováno 11. dubna 2013 .
- Hashimi, Sayed Ibrahim (únor 2009). „MSBuild: osvědčené postupy pro vytváření spolehlivých sestavení, část 1“ . Časopis MSDN . Microsoft . Citováno 11. dubna 2013 .
- Hashimi, Sayed Ibrahim (březen 2009). „MSBuild: osvědčené postupy pro vytváření spolehlivých sestavení, část 2“ . Časopis MSDN . Microsoft . Citováno 11. dubna 2013 .
- Reif, Andreas (10. června 2010). „Einführung in Microsofts Build-Management-Technik MSBuild“ [Úvod do technologie Microsoft pro správu sestavení, MSBuild]. heise Developer (v němčině). Heinz Heise . Citováno 11. dubna 2013 .
- Jones, Mike; Warren, Genevieve; Blome, Mike; Robertson, Colin; Hogenson, Gordon; Cai, Saisang (4. listopadu 2016). „MSBuild cílový rámec a cílová platforma“ . MSBuild. Dokumenty Microsoft . Citováno 2018-02-19 .