MSBuild - MSBuild
Vývojáři | Microsoft |
---|---|
První vydání | 2003 |
Stabilní uvolnění | v16.7.0.37604 / 26. července 2020[1] |
Úložiště | ![]() |
Napsáno | C# |
Operační systém | Cross-platform |
Plošina | .NET Framework, .NET Core |
Typ | Sestavte nástroj |
Licence | Licence MIT |
webová stránka | dokumenty![]() |
Microsoft Build Engine, známější jako MSBuild,[2][3] je zdarma a open-source nástroj pro sestavení Nastavit pro spravovaný kód stejně jako nativní C ++ kódu a byl součástí .NET Framework. Vizuální studio záleží na MSBuild, ale ne naopak.[4] Správa životního cyklu aplikací Visual Studio záleží na MSBuild, jak provést týmové sestavení prostřednictvím Azure DevOps Server.[4]
Přehled
MSBuild je a nástroj pro sestavení který pomáhá automatizovat proces vytváření softwarového produktu, včetně kompilace the zdrojový kód, obal, testování, rozvinutí a vytváření dokumentace. S MSBuild je možné vytvářet projekty a řešení Visual Studio bez Visual Studio IDE nainstalován. MSBuild je zdarma a open-source.[5] MSBuild byl dříve dodáván s .NET Framework; začínání s Visual Studio 2013, ale místo toho je dodáván s Visual Studio.[6] MSBuild je funkční náhrada za nmake obslužný program, který se nadále používá v projektech, které vznikly ve starších verzích sady Visual Studio.
MSBuild působí na soubory projektu MSBuild, které mají podobné XML syntaxe pro Apache Ant nebo NAnt. I když je syntaxe založena na dobře definovaném schématu XML, základní struktura a provoz je srovnatelný s tradičním Unixem udělat obslužný program: uživatel určuje, co bude použito (obvykle soubory zdrojového kódu) a jaký by měl být výsledek (obvykle statická knihovna, DLL nebo spustitelná aplikace), ale obslužný program sám rozhodne, co má dělat a v jakém pořadí má provádět stavba.
MSBuild může vytvořit projekt proti podporované verzi rozhraní .NET Framework dle výběru. Tato funkce se nazývá „multitargeting“. Jakékoli dané sestavení projektu však může cílit pouze na jednu verzi rámce najednou.[7]
Dějiny
MSBuild byl poprvé vytvořen v roce 2003 cílení .NET Framework 2.0 pro použití v Visual Studio 2005 (s kódovým označením Whidbey)[8] a Windows Vista (s kódovým označením Longhorn).[9][10]
Verze
Verze | .NET Framework | Verze Visual Studio | Obvyklá umístění instalace (x86)[11] |
---|---|---|---|
2.0 | 2.0 | 2005 | C: WindowsMicrosoft.NETFrameworkv2.0.50727 |
3.5 | 3.5 | 2008 | C: WindowsMicrosoft.NETFrameworkv3.5 |
4.7.3062.0 | 4.0 | 2010 | C: WindowsMicrosoft.NETFrameworkv4.0.30319 |
4.8.3761.0 | 4.5.2 | 2012 | C: WindowsMicrosoft.NETFrameworkv4.0.30319 |
12.0[6] | 4.5.2 | 2013 | C: Program Files (x86) MSBuild12.0Bin |
14.0 | 4.6 | 2015 | C: Program Files (x86) MSBuild14.0Bin |
15.0[12] | 4.7 | 2017 |
|
16.0[13] | 4.7.2 | 2019 | C: Program Files (x86) Microsoft Visual Studio2019PodnikMSBuildCurrentBin |
Terminologie
![]() | Tato sekce možná matoucí nebo nejasné čtenářům. Zejména není jasné, o čem tato část mluví a jaká je povaha „cíle“ nebo „úkolu“. Příklady by pomohly.duben 2013) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
- cílová
- A cílová obsahuje sadu úkolů, které má MSBuild provést. Výsledkem je zaměření MSBuild cílová specifikováno při vyvolání MSBuild se souborem projektu. Je to proto, že a Projekt může obsahovat několik cílová položky, každý proveden postupně (a podmíněně). Následné závislé cíle jsou provedeny před požadovaným cílem. Tok provádění proudu cílová lze nasměrovat pomocí následujících atributů: Podmínka, BeforeTargets, AfterTargets, & DependsOnTargets. Každý cíl může být samostatný s úkoly nezbytnými k jeho dokončení. Cíl je obvykle akce prováděná se souborem, sadou souborů nebo adresářem.
- Úkol
- A Úkol je příkaz, který je proveden za účelem dokončení cíle. Úkoly slouží k seskupení a provedení libovolného počtu akcí během procesu sestavení. Obvykle jsou implementovány v .NET sestavení jako třída, která dědí z Task třídy nebo implementuje rozhraní ITask. Mnoho základních úkolů je dodáváno jako součást .NET Framework,[14] a úkoly vytvořené komunitou jsou volně dostupné. Některé příklady Úkoly 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í udělat makra. 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
- ^ "Poslední vydání". Microsoft / msbuild. GitHub. Microsoft. Citováno 2020-09-13.
- ^ „microsoft / msbuild: the Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio“. GitHub. Microsoft. Citováno 2019-07-23.
- ^ Hashimi, Sayed Ibrahim; Bartholomew, William (2009). Uvnitř Microsoft Build Engine: Použití MSBuild a Team Foundation Build. Microsoft Press. p. 406. ISBN 978-0-7356-2628-7.
- ^ A b "MSBuild". MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
- ^ Lander, Rich (18. března 2015). „MSBuild Engine je nyní na GitHubu Open Source“. .NET Blog. Blogy MSDN. Microsoft. Citováno 2019-07-23.
- ^ A b „Co je nového v MSBuild 12.0“. MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
- ^ "Přehled multitargetingu MSBuild". MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
- ^ „Vytváření, testování a nasazení“. Novinky ve Visual Studiu 2005. MSDN. Microsoft. Archivovány od originál dne 26. 8. 2014.
- ^ Sneath, Tim (19. července 2004). „MSBuild: The New Build System for Visual Studio 2005 and Longhorn“. Tim Sneath. Blogy MSDN. Citováno 2018-04-22.
- ^ Anglie, Chuck (25. února 2010). „Začínáme s MSBuild“. Blog Visual Studio. Blogy MSDN. Citováno 2018-04-22.
- ^ „Standardní a vlastní konfigurace sady nástrojů“. MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
- ^ „Co je nového v MSBuild 15“. MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
- ^ „Co je nového v MSBuild 16.0“. MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
- ^ "MSBuild reference úlohy". MSBuild. Dokumenty Microsoftu. Citováno 2019-07-23.
Další čtení
- Kretzler, Brian (2011). MSBuild Trickery: 99 způsobů, jak ohnout sestavovací modul podle své vůle. K Cross Seven Ranch Company. p. 426. ISBN 978-0-615-50907-5.
- Hashimi, Sayed Ibrahim (červen 2006). „Inside MSBuild: Compiling Apps with Custom Tasks For the Microsoft Build Engine“. MSDN Magazine. Microsoft. Archivovány od originál dne 11. dubna 2015. Citováno 11. dubna 2013.
- Hashimi, Sayed Ibrahim (březen 2007). „Triky WiX: Automatizace verzí pomocí nástroje MSBuild a instalačního programu Windows XML“. MSDN Magazine. Microsoft. Citováno 11. dubna 2013.
- Hashimi, Sayed Ibrahim (únor 2009). „MSBuild: Best Practices for Creating Reliable Builds, Part 1“. MSDN Magazine. Microsoft. Citováno 11. dubna 2013.
- Hashimi, Sayed Ibrahim (březen 2009). „MSBuild: Best Practices for Creating Reliable Builds, Part 2“. MSDN Magazine. Microsoft. Citováno 11. dubna 2013.
- Reif, Andreas (10. června 2010). „Einführung in Microsofts Build-Management-Technik MSBuild“ [Úvod do technologie Microsoftu pro správu sestavení, MSBuild]. vývojář heise (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 target framework and target platform“. MSBuild. Dokumenty Microsoftu. Citováno 2018-02-19.