【问题标题】:Is it possible to configure TeamCity to use the MSBuild that ships with Visual Studio 2015?是否可以将 TeamCity 配置为使用 Visual Studio 2015 附带的 MSBuild?
【发布时间】:2016-03-31 22:56:24
【问题描述】:

我正在尝试在 TeamCity 中构建一个 ASP.NET vNext 项目。当它尝试构建时,我收到以下错误:

C:\...\MyApp.kproj(7, 3): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\AspNet\Microsoft.Web.AspNet.Props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

它要查找的文件实际上位于C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\AspNet\Microsoft.Web.AspNet.Props

我假设我需要让 TeamCity 使用 Visual Studio 2015 附带的 msbuild 版本。这可能吗?

【问题讨论】:

  • 您是否在托管 Team City 代理的服务器上安装了新版本的 MSBuild?

标签: teamcity asp.net-core visual-studio-2015


【解决方案1】:

编辑: 从 TeamCity 9.x 开始,所有功能都是开箱即用的,但对于早期版本,以下是一个解决方案。

应该通过将env.VSToolsPath 环境属性设置为C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0 来解决项目导入问题。

但是,您将无法使用 TeamCity 包含的 MSBuild 运行程序进行构建。但是使用命令行运行器非常简单。我像这样提取了一个元跑步者。它具有与随附的 TeamCity MSBuild 2013 运行器几乎相同的功能。如果您需要更多可配置性,只需添加更多参数。

我的元跑步者最终看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<meta-runner name="MSBuild 2015">
  <description>MSBuild 2015 command line runner</description>
  <settings>
    <parameters>
      <param name="solutionFile" />
      <param name="target" value="Build" />
    </parameters>
    <build-runners>
      <runner name="MSBuild 2015" type="simpleRunner">
        <parameters>
          <param name="command.executable" value="C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" />
          <param name="command.parameters" value="/v:m /m /t:%target% %solutionFile%" />
          <param name="teamcity.step.mode" value="default" />
        </parameters>
      </runner>
    </build-runners>
    <requirements />
  </settings>
</meta-runner>

注意:预计 2015 年第二季度发布的 TeamCity 9.1 将原生构建 VS2015 项目。

【讨论】:

  • 这对 TeamCity 8.x 来说就像一个魅力。我们现在拥有使用元运行器工作的 2015 年 MS 构建工具。干得好,埃里克!谢谢!
  • 很高兴它对你有用。请注意,在 TeamCity 9.x 中,一切都是开箱即用的,所以如果您愿意,我建议您升级。
【解决方案2】:

另一种解决方法是简单地将 12.0 工具替换为 14.0 工具。我刚刚下载了最新的 Visual Studio 2015 (Update 2) 构建工具。将其安装在我的代理上并

  1. 重命名为 C:\Program Files (x86)\MSBuild\12.0 => C:\Program Files (x86)\MSBuild\12.0-old

  2. 复制的 C:\Program Files (x86)\MSBuild\14.0 => C:\Program Files (x86)\MSBuild\12.0

有效!您需要在 12 和 14 文件夹中都有 14.0-tools 才能正常工作。

【讨论】:

    【解决方案3】:

    Per JetBrains,虽然它应该可以使用 TeamCity 的命令行运行器,但不直接支持。

    【讨论】:

      猜你喜欢
      • 2016-10-01
      • 2017-01-06
      • 1970-01-01
      • 1970-01-01
      • 2015-05-29
      • 2022-01-25
      • 1970-01-01
      • 2012-10-02
      • 1970-01-01
      相关资源
      最近更新 更多