Dmitrii Zyrianov
Dmitrii Zyrianov

Reputation: 2318

How to build .csproj with C# 7 code from command line (msbuild)

I use some C# 7 features in my project:

static void Main(string[] args)
{
}

public byte ContainerVersion
{
    get => 1;
    private set => throw new NotImplementedException();
}

and it builds fine in visual studio 2017, but I get an error on my CI agent when using old msbuild (v14.0 C:\Program Files (x86)\MSBuild\14.0\Bin\msbuid.exe consoleApplication.csproj.):

error CS1513: } expected.

Upvotes: 25

Views: 13647

Answers (2)

KarloX
KarloX

Reputation: 987

Having installed Visual Studio 2017 Community Edition, the path to msbuild.exe on my machine is:

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

Upvotes: 5

Dmitrii Zyrianov
Dmitrii Zyrianov

Reputation: 2318

You'll need to install msbuild-2015 on your CI agent.

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

The default install directory for msbuild will be: C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSBuild.exe

Upvotes: 35

Related Questions