Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Force a tool version with MSBuild from inside the file?

I've moved my project over to .NET 4.0 recently, and am having some trouble running the ASP.NET compiler inside of my build. This doesn't work because MSBuild by default uses an old tools version when running the ASP.NET Compiler.

I've been able to address it my specifying the tools version explicitly (yes, I'm running MSBuild 4.0) like so:

msbuild /t:MyTarget /tv:4.0 mybuildfile.msbuild

Is there any directive I can use from within the build file itself which will allow me to call msbuild in a more plain vanilla fashion like so?

msbuild /t:MyTarget mybuildfile.msbuild
like image 337
Dave Markle Avatar asked May 12 '10 14:05

Dave Markle


1 Answers

Set the project ToolsVersion to 4.0 in your msbuild file :

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   ...
</Project>
like image 50
Julien Hoarau Avatar answered Sep 28 '22 05:09

Julien Hoarau