MSBuild: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Romiro27 (обсуждение | вклад) уточнение исправление |
Спасено источников — 1, отмечено мёртвыми — 0. Сообщить об ошибке. См. FAQ.) #IABot (v2.0.9.5 |
||
(не показано 10 промежуточных версий 6 участников) | |||
Строка 1: | Строка 1: | ||
{{Карточка программы |
{{Карточка программы |
||
| название = MSBuild |
| название = MSBuild |
||
| logo = MSBuild logo.png |
|||
| logo size = 64px |
|||
| тип = [[Автоматизация сборки]] с синтаксисом [[XML]] |
| тип = [[Автоматизация сборки]] с синтаксисом [[XML]] |
||
| разработчик = [[ |
| разработчик = [[.NET Foundation]] |
||
| написана на = [[C Sharp|C#]] |
| написана на = [[C Sharp|C#]] |
||
| операционные системы = [[Linux]], [[macOS]], [[Windows]] |
|||
| последняя версия = 16.6.0.22303 (24 апреля 2020)<ref name="Тэг в официальном репозитории">[https://github.com/microsoft/msbuild/releases/tag/v16.6.0.22303 Последняя версия в репозитории Github]</ref> |
|||
| последняя версия = 17.3.1<ref>{{Cite news|title=v17.3.1|url=https://github.com/dotnet/msbuild/releases/tag/v17.3.1|accessdate=2023-01-25|archivedate=2023-02-19|archiveurl=https://web.archive.org/web/20230219123810/https://github.com/dotnet/msbuild/releases/tag/v17.3.1}}</ref> |
|||
⚫ | |||
| дата последней версии = {{start date and age|2022|08|15}} |
|||
⚫ | | лицензия = [[лицензия MIT]]<ref name="Лицензия в официальном репозитории">{{Cite web |url=https://github.com/microsoft/msbuild/blob/master/LICENSE |title=Лицензия в репозитории Github |access-date=2020-07-12 |archive-date=2017-05-16 |archive-url=https://web.archive.org/web/20170516161802/https://github.com/Microsoft/msbuild/blob/master/LICENSE |deadlink=no }}</ref> |
||
| сайт = [https://docs.microsoft.com/visualstudio/msbuild/msbuild] |
| сайт = [https://docs.microsoft.com/visualstudio/msbuild/msbuild] |
||
}} |
}} |
||
Строка 31: | Строка 35: | ||
== Примечания == |
== Примечания == |
||
<nowiki/>{{примечания}} |
|||
https://github.com/microsoft/msbuild/releases/tag/v16.6.0.22303 |
|||
https://github.com/microsoft/msbuild/blob/master/LICENSE |
|||
https://docs.microsoft.com/visualstudio/msbuild/msbuild<nowiki/>{{примечания}} |
|||
== Ссылки == |
== Ссылки == |
||
Строка 41: | Строка 41: | ||
* [https://web.archive.org/web/20080421122017/http://msdn2.microsoft.com/en-us/library/ms181710.aspx Team Foundation Build overview] |
* [https://web.archive.org/web/20080421122017/http://msdn2.microsoft.com/en-us/library/ms181710.aspx Team Foundation Build overview] |
||
* [http://sedodream.com Popular MSBuild Blog] |
* [http://sedodream.com Popular MSBuild Blog] |
||
* [http://msbuildtasks.tigris.org Open Source MSBuild Community Tasks Project] |
* [http://msbuildtasks.tigris.org Open Source MSBuild Community Tasks Project] {{Wayback|url=http://msbuildtasks.tigris.org/ |date=20100610095025 }} |
||
* [https://web.archive.org/web/20080906133723/http://msdn.microsoft.com/msdnmag/issues/06/06/InsideMSBuild/default.aspx Inside MSBuild MSDN Article] |
* [https://web.archive.org/web/20080906133723/http://msdn.microsoft.com/msdnmag/issues/06/06/InsideMSBuild/default.aspx Inside MSBuild MSDN Article] |
||
* [https://web.archive.org/web/20081203124237/http://msdn.microsoft.com/msdnmag/issues/07/03/wixtricks/default.aspx WiX Tricks-Automate Releases With MSBuild And Windows Installer XML] |
* [https://web.archive.org/web/20081203124237/http://msdn.microsoft.com/msdnmag/issues/07/03/wixtricks/default.aspx WiX Tricks-Automate Releases With MSBuild And Windows Installer XML] |
Текущая версия от 04:06, 11 июня 2023
MSBuild | |||
---|---|---|---|
Тип | Автоматизация сборки с синтаксисом XML | ||
Разработчик | .NET Foundation | ||
Написана на | C# | ||
Операционные системы | Linux, macOS, Windows | ||
Последняя версия | 17.3.1[1] (15 августа 2022 ) | ||
Репозиторий | github.com/dotnet/msbuild | ||
| |||
| |||
Лицензия | лицензия MIT[2] | ||
Сайт | docs.microsoft.com/visua… |
MSBuild — платформа сборки проекта, разработанная Microsoft. Обычно применяется в сочетании с Visual Studio. MSBuild версии 2.0 является частью .NET Framework 2.0 и предназначен для работы с Visual Studio 2005. Версия MSBuild 3.5, объединённая с .NET 3.5 (и Visual Studio 2008), позволяет собирать проекты с поддержкой .NET версий 2.0, 3.0 или 3.5 на выбор (т. н. «многоцелевая сборка», или multi-targeting).
Так как MSBuild доступен в составе .NET, то можно собирать проекты и решения Visual Studio без установленной IDE Visual Studio. MSBuild не требует дополнительных денежных отчислений.
MSBuild обрабатывает специальные файлы проекта MSBuild, имеющие схожий с Apache Ant и NAnt XML-синтаксис. Несмотря на то, что синтаксис базируется на правильно оформленной (well-defined) XML-схеме, основная структура и обработка схожа с традиционной Unix-утилитой Make: пользователь указывает исходные файлы (как правило, это файлы с исходным кодом) и что должно получиться в результате (обычно — готовое приложение), а утилита сама решает, что и в каком порядке нужно делать.
NMAKE
[править | править код]MSBuild — функциональная замена утилите nmake. Последняя всё ещё используется в проектах, написанных на старых версиях Visual Studio.
Цель (Target)
[править | править код]Задача инструмента — результирующая цель (Target), указываемая при вызове MSBuild для проектного файла. Подчинённые зависимые цели достигаются прежде основной цели. Каждая цель может содержать в себе описание необходимых задач (Tasks) для её достижения. Цель, как правило, представляет собой действие над каталогом, файлом или набором файлов.
Задача (Task)
[править | править код]Задача (Task) — команда, которую нужно выполнить для достижения цели (Target). Задача обычно реализуется в виде .NET-сборки как класс, наследующий интерфейс ITask от класса задачи или реализующий его. Существуют намного более удобные и готовые к использованию базовые задачи, поставляемые в составе .NET Framework, причём сообщество, разрабатывающее эти задачи, открытое и легко доступно.
Свойства и элементы
[править | править код]В дополнение к вышеперечисленному MSBuild обеспечивает поддержку свойств (Properties) и элементов (Items), которые концептуально схожи с макросами для Make. Свойства определяют статические значения, тогда как элементы обычно используются для определения набора файлов/папок, необходимых для выполнения задачи. Указание файлов в элементах упрощается за счёт поддержки групповых символов (wildcards).
Team Foundation Build
[править | править код]Visual Studio Team System также зависит от MSBuild при выполнении текущих командных сборок (Team Builds) на Team Foundation Server. Сборки по большей части выполняются не непосредственно на сервере, а на одном или нескольких удаленных серверах сборки (Build Servers) при установленном необходимом программном обеспечении (например, Team Foundation Server (Build)).
Примечания
[править | править код]- ↑ "v17.3.1". Архивировано 19 февраля 2023. Дата обращения: 25 января 2023.
- ↑ Лицензия в репозитории Github . Дата обращения: 12 июля 2020. Архивировано 16 мая 2017 года.
Ссылки
[править | править код]- MSDN — The MSBuild Reference
- Team Foundation Build overview
- Popular MSBuild Blog
- Open Source MSBuild Community Tasks Project Архивная копия от 10 июня 2010 на Wayback Machine
- Inside MSBuild MSDN Article
- WiX Tricks-Automate Releases With MSBuild And Windows Installer XML
- MSBuild: Best Practices For Creating Reliable Builds, Part 1 (MSDN Magazine)
- MSBuild: Best Practices For Creating Reliable Builds, Part 2 (MSDN Magazine)
- MSBuild Sidekick — GUI editor and debugger for MSBuild scripts
- MSBuild Command Line Reference — parameters & switches
- ТВ-программа на MSDN, посвящённая изменениям процесса сборки в Visual Studio build при использовании MSBuild
- MSBuild — статья на RSDN