- MSBuild
-
MSBuild — платформа сборки проекта, разработанная Microsoft. Обычно применяется в сочетании с Visual Studio. MSBuild версии 2.0 является частью .NET Framework 2.0 и предназначен для работы с Visual Studio 2005. Версия 3.5 MSBuild, которая объединена с .NET 3.5 (и Visual Studio 2008), позволяет собирать .NET-проекты с поддержкой 2.0, 3.0 или 3.5 версий .NET на выбор (т. н. «многоцелевая сборка» или multi-targeting).
Так как MSBuild доступен в составе .NET, то можно собирать проекты и решения Visual Studio без установленной IDE Visual Studio. MSBuild не требует дополнительных денежных отчислений.
MSBuild обрабатывает специальные файлы проекта MSBuild, имеющие схожий XML-синтаксис с Apache Ant и NAnt. Несмотря на то, что синтаксис базируется на правильно оформленной (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)).
Ссылки
- MSDN — The MSBuild Reference
- Team Foundation Build overview
- Popular MSBuild Blog
- Open Source MSBuild Community Tasks Project
- 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 Wiki
- MSBuild Command Line Reference — parameters & switches
- ТВ-программа на MSDN, посвященная изменениям процесса сборки в Visual Studio build при использовании MSBUILD
- MSBuild — статья на RSDN.ru
Системы автоматизации сборки Системы автоматизации сборки Make · Premake · CMake · SCons · Apache Ant · Apache Maven · NAnt · Buildout · MSBuild · Waf · Rake · Autotools Категории:- Инструменты компиляции
- Автоматизация сборки
- Microsoft Visual Studio
Wikimedia Foundation. 2010.