MSBuild — MSBuild

MSBuild
Deweloper(zy) Microsoft
Pierwsze wydanie 2003 ; 18 lat temu ( 2003 )
Wersja stabilna
v16.11.0 / 11 sierpnia 2021 ; 21 dni temu ( 2021-08-11 )
Magazyn
Napisane w C#
System operacyjny Wieloplatformowy
Platforma .NET Framework , .NET Core
Rodzaj Narzędzie do budowania
Licencja Licencja MIT
Strona internetowa dokumenty .microsoft .com /visualstudio /msbuild /msbuild Edytuj to na Wikidanych

Microsoft Build Engine , lepiej znany jako MSBuild , jest darmowym i otwartym zestawem narzędzi do kompilacji kodu zarządzanego, a także natywnego kodu C++ i był częścią .NET Framework . Program Visual Studio zależy od programu MSBuild, ale nie na odwrót. Zarządzanie cyklem życia aplikacji programu Visual Studio zależy od programu MSBuild do wykonywania kompilacji zespołowych za pośrednictwem usługi Azure DevOps Server .

Przegląd

MSBuild jest narzędzie build , który pomaga zautomatyzować proces tworzenia produktu oprogramowania, w tym kompilacji do kodu źródłowego , pakowania , testowania, wdrażania i tworzenia dokumentacji. Za pomocą programu MSBuild można tworzyć projekty i rozwiązania programu Visual Studio bez zainstalowanego środowiska IDE programu Visual Studio . MSBuild jest darmowy i open-source . MSBuild był wcześniej łączony z .NET Framework ; począwszy od programu Visual Studio 2013 , jednak zamiast tego jest dołączany do programu Visual Studio. MSBuild jest funkcjonalnym zamiennikiem narzędzia nmake , które pozostaje w użyciu w projektach pochodzących ze starszych wersji programu Visual Studio.

MSBuild działa na plikach projektu MSBuild, które mają podobną składnię XML do Apache Ant lub NAnt . Mimo że składnia jest oparta na dobrze zdefiniowanym schemacie XML, podstawowa struktura i działanie jest porównywalne do tradycyjnego narzędzia uniksowego make : użytkownik określa, co będzie używane (zazwyczaj pliki kodu źródłowego) i jaki powinien być wynik (zazwyczaj statyczny biblioteki, biblioteki DLL lub aplikacji wykonywalnej), ale narzędzie samo decyduje o tym, co zrobić io kolejności, w jakiej wykonać kompilację.

Program MSBuild może skompilować projekt na podstawie wybranej obsługiwanej wersji .NET Framework. Ta funkcja nazywana jest „wielokierowaniem”. Jednak dowolna kompilacja projektu może być kierowana tylko na jedną wersję platformy naraz.

Historia

Program MSBuild został po raz pierwszy utworzony w 2003 roku, przeznaczony dla platformy .NET Framework 2.0 do użytku w programie Visual Studio 2005 (o nazwie kodowej Whidbey) i Windows Vista (o nazwie kodowej Longhorn).

Wersje

Wersja .NET Framework Wersja programu Visual Studio Zwykłe lokalizacje instalacji (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:\Pliki programów (x86)\MSBuild\12.0\Bin
14,0 4,6 2015 C:\Program Files (x86)\MSBuild\14.0\Bin
15,0 4,7 2017
  • C:\Program Files (x86)\Microsoft Visual Studio\2017\ BuildTools \MSBuild\15.0\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2017\ Enterprise \MSBuild\15.0\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2017\ Społeczność \MSBuild\15.0\Bin
16,0 4.7.2 2019
  • C:\Program Files (x86)\Microsoft Visual Studio\2019\ BuildTools \MSBuild\Current\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2019\ Enterprise \MSBuild\Current\Bin
  • C:\Program Files (x86)\Microsoft Visual Studio\2019\ Community \MSBuild\Current\Bin

Terminologia

Cel
Docelowa zawiera zestaw zadań MSBuild wykonać. Fokus programu MSBuild to docelowy wynik określony podczas wywoływania programu MSBuild z plikiem projektu. Dzieje się tak, ponieważ Projekt może zawierać kilka wpisów Target , każdy wykonywany sekwencyjnie (i warunkowo). Kolejne zależne Cele są wykonywane przed żądanym Celem. Przepływ wykonania bieżącego elementu docelowego może być kierowany przy użyciu następujących atrybutów: Condition, BeforeTargets, AfterTargets i DependsOnTargets. Każdy Cel może być samowystarczalny z niezbędnymi Zadaniami do samodzielnego wykonania. Cel to zazwyczaj akcja wykonywana na pliku, zestawie plików lub katalogu.
Zadanie
Zadanie to komenda, która jest wykonywana w celu realizacji celu. Zadania służą do grupowania i wykonywania dowolnej liczby akcji podczas procesu kompilacji. Są one zazwyczaj implementowane w zestawie .NET jako klasa, która dziedziczy z klasy Task lub implementuje interfejs ITask. Wiele podstawowych zadań jest dostarczanych w ramach .NET Framework, a zadania opracowane przez społeczność są dostępne bezpłatnie. Niektóre przykłady zadań obejmują kopiowanie plików, tworzenie katalogów lub analizowanie XML.
Właściwości i przedmioty
MSBuild udostępnia Properties i Items , które są koncepcyjnie równoważne z makrami make . Właściwości określają wartości statyczne, podczas gdy Elementy są zwykle używane do definiowania zestawów plików lub folderów, na których należy wykonywać Zadania. Określanie plików w elementach jest łatwe dzięki obsłudze symboli wieloznacznych.

Zobacz też

Bibliografia

Dalsza lektura

Zewnętrzne linki