如何使用命令行中的C#7代码构建.csproj(msbuild)

Dmi*_*Zyr 22 c# msbuild c#-7.0 visual-studio-2017

我在项目中使用了一些C#7功能:

static void Main(string[] args)
{
}

public byte ContainerVersion
{
    get => 1;
    private set => throw new NotImplementedException();
}
Run Code Online (Sandbox Code Playgroud)

它在Visual Studio 2017中构建得很好,但是当我使用旧的msbuild(v14.0 C:\Program Files (x86)\MSBuild\14.0\Bin\msbuid.exe consoleApplication.csproj.)时,我的CI代理会出错:

error CS1513: } expected.

Dmi*_*Zyr 31

您需要msbuild-2015在CI代理上安装.

https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15

msbuild的默认安装目录为: C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe

  • MSBuild 15随VS一起安装.它将在%VSINSTALLDIR%\ MSBuild\15.0\Bin\MSBuild.exe下.Build Tools SKU适用于您不希望安装VS的CI代理.值得注意的是两种情况. (9认同)

Kar*_*loX 5

安装了 Visual Studio 2017 社区版后,我机器上 msbuild.exe 的路径是:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe