在 FAKE 构建脚本中使用特定版本的 MSBuild

Using a specific version of MSBuild in a FAKE build script

我的机器上目前安装了 VS2013 和 VS2015。

默认情况下 FAKE F# Make 似乎是用 VS2015 构建的。

我尝试将 VisualStudioVersion 12.0 传递到我的 MSBuild 任务中,但这似乎没有任何效果。

我看到一些文章说要更改 Fake.exe.config 中的 MSBuildPath,但我没有在该 exe 中看到 MSBuildPath。

如何确保它使用 Visual Studio 2012 (12.0) 提供的 MSBuild?

这段代码对我有用:

    let toolsVersion = "12.0"

    let setParams defaults =
        { defaults with
            ToolsVersion = Some(toolsVersion)
        }

    build setParams solutionPath
        |> DoNothing

@Andrew 代码没有为我更改 MSBuild 版本。我想出了另一种方法来实现这一目标。

EnvironmentHelper.setBuildParam "VisualStudioVersion" "14.0"

您还可以对 vs2013 使用 "12.0" 或对 vs2017 使用 "15.0"。 这是在构建期间使用此变量的 link to Fake source