Tag: MSBuild
MSBuild Training | MSBuild Course | Online | Classroom | India
MSBuild 4.0 Basics
This module introduces MSBuild, including what it does, how it works, and how to use it.
- What is MSBuild
- Sample project files
- Solutions vs. projects
- Targets and Tasks
- Properties and Items
- Editing projects with Visual Studio 2010
Customization
This module introduces the many ways you can customize and extend MSBuild.
- Build Events
- Custom build steps
- Custom build tools
- Custom buld targets
- Custom build tasks
- MSBuild extension pack
Troubleshooting
This module provides the student with many tools and tricks to be used when troubleshooting a slow or otherwise misbehaving build.
- Logging
- Logging verbosity
- Console logger
- File logger
- Custom loggers
- Handling errors
- Debugging MSBuild using Visual Studio
- Debugging MSBuild using MSBuild Sidekick by Attrice
- Debugging tasks and loggers
- Troubleshooting multiple import issues
- Troubleshooting performance issues
- Troubleshooting incremental build issues
Introduction to MSBuild – Quick Intro Guide
Introduction to MSBuild
- Microsoft supported build engine
- XML-based configuration file
- Intellisense available from Visual Studio using supplied schema
- Ships with .NET Framework 2.0, it is NOT part of Team Foundation Server
- Both Visual Studio and Team Foundation Server leverage MSBuild
- Command-line utility – MSBuild.exe
MSBuild Concepts
- Project
- Property
- Item
- Target
- Task
Projects
– The root concept in MSBuild
– Defines the build process
Example:
Build
Properties
– Name/value pairs
Items
– Set of objects (commonly files)
– Can specify meta-data to be applied to the objects
Example:
Targets
– Defines a number of sequential tasks
– Projects can have initial and/or default targets
Example:
Tasks
– Performs an operation
– Uses properties and items
– Extensible
Exmaple:
<MakeDir
Directories="$(BuildDir)" />
Some Reference Link:
http://msdn.microsoft.com/en-us/library/ms171452%28VS.90%29.aspx
http://msdn.microsoft.com/en-us/library/0k6kkbsd.aspx
http://www.codeproject.com/KB/aspnet/Automate_Builds.aspx
http://www.codeproject.com/KB/aspnet/Automate_Builds.aspx
http://en.wikipedia.org/wiki/MSBuild
Running MSBuild 4.0 and MSBuild 3.5 on Continuous Integration
With Visual Studio 2010 RC released recently, we jumped on the release and began to code with VS2010. One issue that popped up was that now all builds were targeting MSBuild 4.0.
That doesn’t seem to be a big problem until our CruiseControl CI server kicked in, downloaded our updated code and failed building the upgraded projects.
Fortunately there is a very quick solution to this little problem. There are a couple of requirements.
1. You need to have VS2010 RC installed somewhere
2. You need to download the .Net Framework 4.0 (I recommend the full version and not just the Client Profile, it ensures you don’t miss anything)
To fix, do the following:
1. download and install the .Net Framework 4.0 on the CI server (then restart the server)
2. on the computer where VS2010 RC is installed go to the following path:
%programfiles%\MSBuild\Microsoft\VisualStudio
3. copy the v10.0 folder located in that directory into the CI server at the same path (or wherever our MSbuild path is on the CI server)
4. Once that is done, edit the ccnet.config file at the tag and change it to the new .Net 4.0 Framework installed (you should only need to change the section “\v3.5\” to “\v4.0.xxxxx\”
Hope this helps