Jamie Nordmeyer
Jamie Nordmeyer

Reputation: 607

MSBuildExtensionsPath32 not set correctly?

For the life of me, I cannot find where this value is actually set. It SHOULD be pointing at C:\Program Files\MSBuild, but on our build box, it's pointing at C:. How can I change this?

Upvotes: 32

Views: 40689

Answers (2)

speckledcarp
speckledcarp

Reputation: 6375

This is a very old question, but I ran into a similar issue using MSBuild version 16.0 ("equivalent" to Visual Studio 2019).

In my case I had a commandline option setting the build tools to an older version that didn't exist on my build server.

I had to use /tv:"Current" to get the build to correctly set the MSBuildExtensionsPath variable

Upvotes: 1

Julien Hoarau
Julien Hoarau

Reputation: 49970

MSBuildExtensionsPath32 is set internally by MSBuild. (BuildEngine.BuildPropertyGroup.SetExtensionsPathProperties)

But you could override it by setting an environment variable.

SET MSBuildExtensionsPath="C:\Program Files\MSBuild"

Or you could override the value in your project file :

<PropertyGroup>
  <MSBuildExtensionsPath>C:\Users\madgnome\Desktop\msbuild</MSBuildExtensionsPath>

  <!-- It works too with relative path -->
  <!--<MSBuildExtensionsPath>..\msbuild</MSBuildExtensionsPath>-->
</PropertyGroup>

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

Upvotes: 26

Related Questions