DrG*_*iff 6 msbuild build-tools build-server visual-studio-2017
我在构建服务器上安装了Visual Studio 2017的MSBuild(15.4.0)工具.为此,我使用了Visual Studio Downloads中标题为"Visual Studio 2017的构建工具"的链接
MSBuild.exe的路径是:
C:\ Program Files(x86)\ Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin
我已将此路径添加到环境变量"路径".
我有一个powershell脚本,以下作为构建任务的主体:
msbuild'..\MyApplication.sln'/ t:Build /tv:15.0/p:GenerateBuildInfoConfigFile = false/p:Configuration = Release/p:RunCodeAnalysis = True /p:VisualStudioVersion=15.0
但是,当执行此操作时(全部由TeamCity处理)我在LOG中找到以下内容:
MSBUILD:错误MSB1040:ToolsVersion无效.工具版本"15.0"无法识别.可用的工具版本是"2.0","3.5","4.0".
该文件表明,15.0应该是正确的.
编辑 从2017 年MSbuild 15中的新功能文档中可以看出:
此版本工具的MSBuildToolsVersion为15.0.程序集版本为15.1.0.0.
但是,2017年文档MSBuild命令行参考指出:
对于MSBuild 4.5,您可以为版本指定以下值:2.0,3.5和4.0.如果指定4.0,则VisualStudioVersion构建属性指定要使用的子工具集.有关更多信息,请参阅Toolset的子工具集部分(ToolsVersion).
所以我对命名法有点困惑:MSBuild 15或MSBuild 4.5 ......?
我终于找到了解决办法。原来是这条路走错了。
解决方案是将上面的 powershell 行更改为:
$msbuild = 'C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\msbuild.exe'
& msbuild '..\MyApplication.sln' /t:Build /m /p:GenerateBuildInfoConfigFile=false /p:Configuration=Release /p:RunCodeAnalysis=True /p:VisualStudioVersion=15.0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8206 次 |
| 最近记录: |