是否可以将TeamCity配置为使用Visual Studio 2015附带的MSBuild?
我正在尝试在TeamCity中构建一个ASP.NET vNext项目。当它尝试构建时,我得到以下错误:是否可以将TeamCity配置为使用Visual Studio 2015附带的MSBuild?,teamcity,asp.net-core,visual-studio-2015,Teamcity,Asp.net Core,Visual Studio 2015,我正在尝试在TeamCity中构建一个ASP.NET vNext项目。当它尝试构建时,我得到以下错误: C:\…\MyApp.kproj(7,3):错误MSB4019:未找到导入的项目“C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v12.0\AspNet\Microsoft.Web.AspNet.Props”。确认声明中的路径正确,并且文件存在于磁盘上。 它要查找的文件实际上位于C:\ProgramFiles(x86)\MSBuild
C:\…\MyApp.kproj(7,3):错误MSB4019:未找到导入的项目“C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v12.0\AspNet\Microsoft.Web.AspNet.Props”。确认声明中的路径正确,并且文件存在于磁盘上。
它要查找的文件实际上位于C:\ProgramFiles(x86)\MSBuild\Microsoft\VisualStudio\v14.0\AspNet\Microsoft.Web.AspNet.Props
我假设我需要让TeamCity使用Visual Studio 2015附带的msbuild版本。这可能吗?,它不直接受支持,尽管使用TeamCity的命令行运行程序应该是可能的 编辑:从TeamCity 9.x开始,所有工作都是开箱即用的,但对于早期版本,以下是解决方案
应通过将env.VSToolsPath
环境属性设置为C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v14.0
来解决项目导入问题
但是,您将无法使用TeamCity包含的MSBuild运行程序进行生成。但是使用命令行运行程序非常简单。我提取了一个像这样的元跑步者。它的功能与附带的TeamCity MSBuild 2013 runner几乎相同。如果您需要更多的可配置性,只需添加更多参数
我的meta runner最终看起来像这样:
<?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>
MSBuild 2015命令行运行程序
注:将于2015年第二季度发布的TeamCity 9.1预计将以本地方式构建VS2015项目。另一种解决方法是简单地将12.0工具替换为14.0工具。我刚刚下载了最新的Visual Studio 2015(更新2)构建工具。将其安装到我的代理和
工作!您需要在12和14文件夹中同时使用14.0-tools才能正常工作。您是否在承载Team City agent的服务器上安装了新版本的MSBuild?这对Team City 8.x来说非常有用。我们现在有2015年的MS构建工具,使用meta Runner。干得好,埃里克!谢谢很高兴它对你有用。请注意,在TeamCity 9.x中,一切都是开箱即用的,因此如果您选择升级,我建议您升级。