Jump to content

MSBuild

MSBuild
Разработчик(и) Microsoft , .NET Foundation
Первоначальный выпуск 2003 год ; 21 год назад ( 2003 )
Стабильная версия
v17.8.3 / 15 ноября 2023 г .; 8 месяцев назад ( 15.11.2023 ) [1]
Репозиторий
Написано в С#
Операционная система Кросс-платформенный
Платформа .NET Framework , .NET
Тип Инструмент сборки
Лицензия МОЯ лицензия
Веб-сайт документы .microsoft /визуальная студия /msbuild /msbuild  Edit this on Wikidata

Microsoft Build Engine или MSBuild , [2] [3] — это набор с открытым исходным кодом бесплатных инструментов сборки для управляемого кода в рамках Common Language Infrastructure, а также собственного C и C++ кода . Впервые он был выпущен в 2003 году и был частью .NET Framework . MSBuild входит в состав Visual Studio MSBuild , но его также можно запускать независимо через интерфейс командной строки . [4]

MSBuild — инструмент сборки , который помогает автоматизировать процесс создания программного продукта, включая компиляцию исходного кода , упаковку , тестирование, развертывание и создание документации. С помощью MSBuild можно создавать проекты и решения Visual Studio без установки интегрированной среды разработки Visual Studio . 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 Framework. Эта функция называется «мультитаргетинг». Однако любая сборка проекта может одновременно ориентироваться только на одну версию платформы. [7]

MSBuild был впервые создан в 2003 году для .NET Framework 2.0 для использования в Visual Studio 2005 (под кодовым названием Whidbey). [8] и Windows Vista (под кодовым названием Longhorn). [9] [10]

Версия .NET Framework Версия 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
  • 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\ Community \MSBuild\15.0\Bin
16.0 [13] 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
17.0 2022
  • C:\Program Files\Microsoft Visual Studio\2022\ BuildTools \MSBuild\Current\Bin
  • C:\Program Files\Microsoft Visual Studio\2022\ Enterprise \MSBuild\Current\Bin
  • C:\Program Files\Microsoft Visual Studio\2022\ Сообщество \MSBuild\Current\Bin

Терминология

[ редактировать ]
Цель
Цель . содержит набор задач, которые MSBuild должен выполнить Фокусом MSBuild является цель результата , указанная при вызове MSBuild с файлом проекта. Это связано с тем, что проект может содержать несколько записей Target , каждая из которых выполняется последовательно (и условно). Последующие зависимые цели выполняются перед запрошенной целью. Поток выполнения текущей цели можно направить с помощью следующих атрибутов: Condition, BeforeTargets, AfterTargets и DependsOnTargets. Каждая Цель может быть автономной и содержать необходимые Задачи для ее выполнения. Цель обычно представляет собой действие, выполняемое над файлом, набором файлов или каталогом.
Задача
Задача — это команда, которая выполняется для достижения Цели. Задачи используются для группировки и выполнения любого количества действий в процессе сборки. Обычно они реализуются в сборке .NET как класс, который наследуется от класса Task или реализует интерфейс ITask. Многие базовые задачи поставляются как часть .NET Framework. [14] а задачи, разработанные сообществом, доступны бесплатно. Некоторые примеры задач включают копирование файлов, создание каталогов или анализ XML.
Свойства и предметы
MSBuild предоставляет свойства и элементы , которые концептуально эквивалентны make макросам . Свойства задают статические значения, тогда как элементы обычно используются для определения наборов файлов или папок, над которыми можно выполнять задачи. Указание файлов в элементах упрощается благодаря поддержке подстановочных знаков.

См. также

[ редактировать ]
  1. ^ «Последний выпуск» . Майкрософт/мсбилд. Гитхаб . Майкрософт . Проверено 20 августа 2022 г.
  2. ^ «microsoft/msbuild: Microsoft Build Engine (MSBuild) — это платформа сборки для .NET и Visual Studio» . Гитхаб . Майкрософт . Проверено 23 июля 2019 г.
  3. ^ Хашими, Сайед Ибрагим; Варфоломей, Уильям (2009). Внутри Microsoft Build Engine: использование MSBuild и Team Foundation Build . Майкрософт Пресс. п. 406. ИСБН  978-0-7356-2628-7 .
  4. ^ «МСБилд» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.
  5. ^ Ландер, Рич (18 марта 2015 г.). «MSBuild Engine теперь имеет открытый исходный код на GitHub» . .NET-блог. Блоги MSDN . Майкрософт . Проверено 23 июля 2019 г.
  6. ^ Jump up to: а б «Что нового в MSBuild 12.0» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.
  7. ^ «Обзор мультитаргетинга MSBuild» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.
  8. ^ «Создание, тестирование и развертывание» . Что нового в Visual Studio 2005. MSDN . Майкрософт. Архивировано из оригинала 26 августа 2014 г.
  9. ^ Снит, Тим (19 июля 2004 г.). «MSBuild: новая система сборки для Visual Studio 2005 и Longhorn» . Тим Снит. Блоги MSDN . Проверено 22 апреля 2018 г.
  10. ^ Англия, Чак (25 февраля 2010 г.). «Начало работы с MSBuild» . Блог Visual Studio. Блоги MSDN . Проверено 22 апреля 2018 г.
  11. ^ «Стандартные и пользовательские конфигурации набора инструментов» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.
  12. ^ «Что нового в MSBuild 15» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.
  13. ^ «Что нового в MSBuild 16.0» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.
  14. ^ «Справочник по задаче MSBuild» . MSBuild. Документы Майкрософт . Проверено 23 июля 2019 г.

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 4bb14dda299fc73617900a9e872305a4__1703127420
URL1:https://arc.ask3.ru/arc/aa/4b/a4/4bb14dda299fc73617900a9e872305a4.html
Заголовок, (Title) документа по адресу, URL1:
MSBuild - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)