使用Azure SDK 2.9.6的MSBuild Tools 2017

时间:2017-03-16 11:08:36

标签: azure msbuild visual-studio-2017

是的,那里有类似的问题,但它们与VS 2017无关:

我最近从VS 2015升级到VS 2017.在我的本地开发计算机上一切正常,Azure应用程序(使用Azure SDK 2.9.6)构建并启动。

但是在TeamCity服务器上(MS Build Tools 2017 - 工具版本15.0)我收到以下错误:

  

MSB4019:导入的项目“C:\ Program Files(x86)\ Microsoft   视觉   工作室\ 2017年\编译工具\的MSBuild \微软\ VisualStudio的\ V15.0 \ Windows下   找不到Azure Tools \ 2.9 \ Microsoft.WindowsAzure.targets。确认   声明中的路径是正确的,而那个   文件存在于磁盘上。

构建服务器/ MSBuild尝试在目录中找到Microsoft.WindowsAzure.targets

"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Microsoft\VisualStudio\v15.0\Windows Azure Tools\2.9\

但它实际上在目录中:

"C:\Program Files (x86)\Microsoft Visual Studio\2017\[VisualStudioVersion]\MSBuild\Microsoft\VisualStudio\v15.0\Windows Azure Tools\2.9\

[VisualStudioVersion]可以具有以下值“社区”,“专业”,“企业”

是的,我已经安装了构建工具(https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15)。

是的,我已将整个Windows Azure Tools文件夹复制到BuildTools\MSBuild\Microsoft\VisualStudio\v15.0,但后来我的F#项目又出现了另一个错误:

  

MSB4057:目标“GetTargetFrameworkProperties”中不存在   该项目。

似乎新的MS Build Tools 2017无法与Windows Azure一起正常运行。还有解决方法吗?或者是切换回旧版MSBuild的唯一选择吗?

1 个答案:

答案 0 :(得分:5)

新的独立BuildTools目前不支持Windows Azure目标。 因此,如果要在Azure SDK上使用新的MSBuild 2017,则必须在构建服务器上安装完整的VS 2017安装。

注意:您可能必须重新启动TeamCity(代理)才能识别MSBuild路径。运行构建后,您可以在选项卡'parameters'中看到使用过的MSBuild路径:

MSBuildTools15.0_x64_Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS_VERSION]\MSBuild\15.0\bin\amd64 MSBuildTools15.0_x86_Path: C:\Program Files (x86)\Microsoft Visual Studio\2017\[VS_VERSION]\MSBuild\15.0\bin [VS_VERSION]可以是CommunityProfessionalEnterprise

我仍然从F#项目中得到GetTargetFrameworkProperties错误,这是通过添加标志来解决的:

  

/p:VisualStudioVersion=15.0

到MSBuild任务。

有关详细信息,请参阅https://github.com/Microsoft/msbuild/issues/1888