从命令行生成isn';t正在学习最新版本的C#

从命令行生成isn';t正在学习最新版本的C#,c#,.net,visual-studio,msbuild,C#,.net,Visual Studio,Msbuild,在我的Jenkins build中,我使用以下设置和构建我的项目: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\vsvars32.bat" MSBuild.exe /p:Configuration=Release /p:Platform=x86 JetCutStudies.sln 这主要是有效的。直到最近,一切都在建设中。但我还没有开始包括一些C#7/7.1语言特性。在VS2017 IDE中,

在我的Jenkins build中,我使用以下设置和构建我的项目:

call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\vsvars32.bat"

MSBuild.exe /p:Configuration=Release /p:Platform=x86 JetCutStudies.sln
这主要是有效的。直到最近,一切都在建设中。但我还没有开始包括一些C#7/7.1语言特性。在VS2017 IDE中,这可以很好地构建,但从上面的命令行(在同一台机器上测试)构建时会出现错误

简而言之,看起来vsvars32.bat没有获得正确的版本


如何使用C#编译器的正确版本生成命令行?

Microsoft更改了Visual Studio 2017的安装,以便

  • 不同版本可以并排安装
  • 预览版本可以并排安装
由于这些根本性的更改,您无法使用硬代码路径来定位任何VisualStudio组件(MSBuild、任何脚本等)


新的实用程序可以帮助定位根安装文件夹,然后从中计算其他路径。

Microsoft更改了Visual Studio 2017安装,以便

  • 不同版本可以并排安装
  • 预览版本可以并排安装
由于这些根本性的更改,您无法使用硬代码路径来定位任何VisualStudio组件(MSBuild、任何脚本等)


新的实用程序可以帮助定位根安装文件夹,然后从中计算其他路径。

了解什么是
vswhere
,并使用它定位CS2017路径。谢谢!我不知道在哪里!vswhere的choco安装和vswhere网站上描述的用法成功了()。你想写一个答案还是我来写?了解什么是
vswhere
,并用它来定位CS2017路径。谢谢!我不知道在哪里!vswhere的choco安装和vswhere网站上描述的用法成功了()。你想写答案,还是我写?