对于我的生活,我无法找到实际设置此值的位置。它应该指向C:\ Program Files \ MSBuild,但在我们的构建框中,它指向C:。我怎么能改变这个?
答案 0 :(得分:18)
MSBuildExtensionsPath32
由MSBuild在内部设置。 (BuildEngine.BuildPropertyGroup.SetExtensionsPathProperties
)
但您可以通过设置环境变量来覆盖它。
SET MSBuildExtensionsPath="C:\Program Files\MSBuild"
或者您可以覆盖项目文件中的值:
<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" />
答案 1 :(得分:0)
这是一个非常老的问题,但是我在使用MSBuild 16.0版(与Visual Studio 2019“等效”)时遇到了类似的问题。
就我而言,我有一个命令行选项,可将构建工具设置为构建服务器上不存在的旧版本。
我必须使用/tv:"Current"
来获得正确设置MSBuildExtensionsPath
变量的版本