Программа msbuild для чего

Цель статьи — рассказать немного о MSBuild, показать что такое таргеты и таски в MSBuild, научить работать с файлом .csproj, дать полезные ссылки. Если у вас будет более подходящее название для статьи, то буду рад обсудить в комментариях.

Меню

  • Основные понятия — что такое target и task в MSBuild
  • Жизненный цикл сборки MSBuild — какая последовательность вызова таргетов
  • Подготовка окружения для примеров
  • Таргеты в MSBuild — пример использования некоторых таргетов MSBuild
  • Создание собственного таргета MSBuild
  • Таски в MSBuild — пример использования некоторых тасков MSBuild
  • Переменные и макросы в .csproj
  • Ссылки

Основные понятия (Меню)

MSBuild устроен таким образом, что сборка проекта разбита на несколько этапов.

Target — это некоторый этап (событие), происходящее во время сборки проекта. Можно использовать стандартные таргеты, либо определять собственные.

Task — это некоторая задача, которая может выполняться на определенном этапе. Можно использовать стандартные таски или создавать собственные.

Announcing Windows Copilot

Targets group tasks together in a particular order and allow the build process to be factored into smaller units.
For example, one target may delete all files in the output directory to prepare for the build, while another
compiles the inputs for the project and places them in the empty directory.

Жизненный цикл сборки MSBuild (Меню)

Для работы MSBuild Microsoft определил ряд стандартных таргетов (в файлах Microsoft.Common.targets, Microsoft.CSharp.targets и т.д.). Определено огромное множество различных таргетов, но в данной статье мы не будем на этом подробно останавливаться. Некоторые стандартные таргеты (упорядочены):

Список таргетов (спойлер)

  • BeforeRebuild
  • Clean
  • BeforeBuild
  • BuildOnlySettings
  • PrepareForBuild
  • PreBuildEvent
  • ResolveReferences
  • PrepareResources
  • ResolveKeySource
  • Compile
  • UnmanagedUnregistration
  • GenerateSerializationAssemblies
  • CreateSatelliteAssemblies
  • GenerateManifests
  • GetTargetPath
  • PrepareForRun
  • UnmanagedRegistration
  • IncrementalClean
  • PostBuildEvent
  • AfterBuild
  • AfterRebuild

Таргеты BeforeBuild и AfterBuild специально созданы для переопределения и их можно использовать. Остальные таргеты из списка не рекомендую использовать, чтобы ничего не сломалось.

Для более подробного просмотра списка таргетов можно использовать параметр /pp:. Благодаря этому параметру будет сформирован файл, в который будут включены все импорты (включая файлы .targets). В нем можно найти множество таргетов и переменных (спасибо aikixd за подсказку).

Читайте также:
Installation database что это за программа

Подготовка окружения для примеров (Меню)

Для примеров необходимо:

  • Установленная среда разработки Visual Studio
  • Создать проект типа Console Application с именем MSBuildExample
  • Открыть папку проекта и найти там файл MSBuildExample.csproj
  • Открыть файл MSBuildExample.csproj в блокноте или другом редакторе

image

Matthias Koch. Внедряем и дебажим собственные задачи MSBuild

MSBuild — MSBuild

Microsoft Build Engine, более известный как MSBuild, [2] [3] это бесплатно и с открытым исходным кодом инструмент сборки набор для управляемый код а также родной C ++ код и был частью .NET Framework. Visual Studio зависит от MSBuild, но не наоборот. [4] Управление жизненным циклом приложений Visual Studio зависит от MSBuild для выполнения командных сборок через Сервер Azure DevOps. [4]

  • 1 Обзор
  • 2 История
  • 3 Версии
  • 4 Терминология
  • 5 Смотрите также
  • 6 Рекомендации
  • 7 дальнейшее чтение
  • 8 внешняя ссылка

Обзор

MSBuild — это инструмент сборки что помогает автоматизировать процесс создания программного продукта, в том числе составление то исходный код, упаковка, тестирование, развертывание и создание документации. С MSBuild можно создавать проекты и решения Visual Studio без Visual Studio. IDE установлен. MSBuild — это бесплатно и с открытым исходным кодом. [5] MSBuild ранее был связан с .NET Framework; начиная с Visual Studio 2013 однако вместо этого он входит в состав Visual Studio. [6] MSBuild — это функциональная замена nmake служебная программа, которая по-прежнему используется в проектах, созданных в более ранних выпусках Visual Studio.

MSBuild работает с файлами проекта MSBuild, имеющими аналогичный XML синтаксис для Apache Ant или NAnt. Несмотря на то, что синтаксис основан на четко определенной схеме XML, фундаментальная структура и работа сравнимы с традиционным Unix делать утилита: пользователь указывает, что будет использоваться (обычно файлы исходного кода) и каким должен быть результат (обычно статическая библиотека, DLL или исполняемое приложение), но утилита сама решает, что делать и в каком порядке выполнять сборка.

MSBuild может построить проект на основе выбранной поддерживаемой версии .NET Framework. Эта функция называется «мультитаргетинг». Однако любая сборка проекта может одновременно нацеливаться только на одну версию платформы. [7]

История

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

Читайте также:
Openoffice impress что это за программа

Версии

  • C: Программные файлы (x86) Microsoft Visual Studio2017BuildToolsMSBuild15.0Bin
  • C: Программные файлы (x86) Microsoft Visual Studio2017ПредприятиеMSBuild15.0Bin
  • C: Программные файлы (x86) Microsoft Visual Studio2017СообществоMSBuild15.0Bin

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

Эта секция может быть сбивает с толку или неясно читателям. В частности, неясно, о чем идет речь в этом разделе и какова природа, скажем, «цели» или «задачи». Примеры помогут. Пожалуйста, помоги нам прояснить раздел. Возможно обсуждение этого вопроса на страница обсуждения. ( апрель 2013 ) (Узнайте, как и когда удалить этот шаблон сообщения)

Смотрите также

  • Портал бесплатного программного обеспечения с открытым исходным кодом

Рекомендации

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

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

  • Крецлер, Брайан (2011). Уловки MSBuild: 99 способов подчинить движок сборки. K Cross Seven Ranch Company. п. 426. ISBN978-0-615-50907-5 .
  • Хашими, Сайед Ибрагим (июнь 2006 г.). «Внутри MSBuild: компиляция приложений с пользовательскими задачами для Microsoft Build Engine». Журнал MSDN. Microsoft. Архивировано из оригинал 11 апреля 2015 г. . Получено 11 апреля 2013 .
  • Хашими, Сайед Ибрагим (март 2007 г.). «Уловки WiX: автоматизация выпусков с помощью MSBuild и установщика Windows XML». Журнал MSDN. Microsoft . Получено 11 апреля 2013 .
  • Хашими, Сайед Ибрагим (февраль 2009 г.). «MSBuild: передовые методы создания надежных сборок, часть 1». Журнал MSDN. Microsoft . Получено 11 апреля 2013 .
  • Хашими, Сайед Ибрагим (март 2009 г.). «MSBuild: передовые методы создания надежных сборок, часть 2». Журнал MSDN. Microsoft . Получено 11 апреля 2013 .
  • Рейф, Андреас (10 июня, 2010 г.). «Einführung в Microsoft Build-Management-Technik MSBuild» [Введение в технологию управления сборкой Microsoft, MSBuild]. Разработчик Heise (на немецком). Heinz Heise . Получено 11 апреля 2013 .
  • Джонс, Майк; Уоррен, Женевьева; Блом, Майк; Робертсон, Колин; Хогенсон, Гордон; Цай, Сайсанг (4 ноября 2016 г.). «Целевая платформа и целевая платформа MSBuild». MSBuild. Документы Microsoft . Получено 2018-02-19 .
Читайте также:
Программа шелтер для гостиниц что это

внешняя ссылка

  • Официальный веб-сайт

Инструменты разработки Microsoft

  • Код
  • Azure DevOps
  • Экспресс
  • Профайлер Team System
  • Test Professional
  • Инструменты для приложений
  • Инструменты для офиса
  • Платформа компилятора .NET
  • Студия приложений
  • Смешать
  • CodeView
  • Expression Web
  • FxCop
  • GW-BASIC
  • Microsoft MACRO-80
  • Ассемблер макросов Microsoft
  • Microsoft Паскаль
  • MSBuild
  • Студия разработчиков робототехники
  • SharePoint Designer
  • Титульная страница
  • QBasic
  • Профилировщик CLR
  • ILAsm
  • Генератор собственных изображений
  • WinDiff
  • XAMLPad
  • Windows API
  • Silverlight
  • XNA
  • DirectX
  • Управляемый DirectX

Источник: wikisko.ru

Где находится MSBuild.exe установлен в Windows при установке с помощью BuildTools Full.exe?

Я пытаюсь настроить сервер сборки для .NET, но не могу понять, где MSBuild.exe установлен.

Я пытаюсь установить MSBuild с помощью Microsoft Build Tools 2013: https://www.microsoft.com/en-us/download/details.aspx?id=40760

автор: jonasm

2 ответов

MSBuild в предыдущих версиях .NET Framework был установлен с ним, но они решили установить его с Visual Studio или с пакетом BuildTools_Full.исполняемый.

путь для установки .NET framework C:WindowsMicrosoft.NETFramework[64 или пустой][framework_version] Путь при установке Visual Studio-это является C:Program файлы (для x86)MSBuild в[Версия]bin для x86 и файлы C:Program (для x86)MSBuild в[Версия]Бинamd64 для 64-разрядных.

путь, когда BuildTools_Full.exe установлен так же, как при установке MSBuild с Visual Studio.

автор: MaGnumX

MSBuild теперь устанавливается в папку под каждой версией Visual Studio. Например, C:Program Files (x86)Microsoft Visual Studio17EnterpriseMSBuild . Вы также можете использовать следующий модуль PowerShell для поиска MSBuild:vssetup.в PowerShell.

MSBuild больше не устанавливается в глобальный кэш сборок. Чтобы программно ссылаться на MSBuild, используйте NuGet пакеты.

Источник: askdev.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru