MSBuild
From Wikipedia, the free encyclopedia
MSBuild is the build platform for Microsoft and Visual Studio. For Visual Studio 2005 (8.0) the MSBuild tools are contained within the .NET Framework 2.0. This makes it possible to build Visual Studio projects and solutions without the Visual Studio IDE installed. MSBuild is available at no cost.
MSBuild acts on MSBuild project files which has a similar XML syntax to Apache Ant or NAnt. Even though the syntax is based upon XML, the fundamental structure and operation is comparable to the traditional Unix make utility: the user specifies what will be used (typically source code files) and what the result should be (typically an application), but the utility itself decides what to do and what order to do it in.
Contents |
[edit] Target
The focus of the tool is the result Target specified when invoking MSBuild with the project file. Subsequent dependent Targets are executed before the requested Target. Each Target may be self contained with the necessary Tasks to complete itself. A Target is typically a file, directory or simply a job like cleaning the build structure.
[edit] Task
A Task is a command which is executed in order to complete a Target. A Task is typically implemented in a .NET assembly as a class which inherits from the Task class or implements the ITask interface. A lot of ready-to-use Tasks exist, some communities are active in developing new Tasks.
[edit] Properties and Items
In addition the MSBuild provides Properties and Items, which are conceptually equivalent to make's macros.
[edit] Team Foundation Build
The Visual Studio Team System also depends on MSBuild to perform the actual Team Builds via the Visual Studio Team Foundation Server. The builds are most likely not executed on the server itself, but remotely on one or more Build Servers with the necessary software installed (i.e. Team Foundation Server (Build)).
[edit] References
- 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
- - A Visual Debugger for MSBuild Projects/Scripts