web-dev-qa-db-ja.com

TeamCityはC#7を使用してプロジェクトを構築できません

最新のコードアップデートで新しい出力変数構文を追加すると、TeamCityがエラーをスローします。

_if (Enum.TryParse(input, out MyProject.ClassificationType classification))
{
    result.Classification = classification;
}
_

TeamCityはこのエラーをスローしました:

[Csc] MyProject\MyCode.cs(125, 111): error CS1003: Syntax error, ',' expected

コードはビルドされ、Visual Studioで正常に実行されます。

13
Kcoder

TeamCity Agentのマシン上のMSBuildは、Microsoft Build Tools2015を使用するのに時代遅れでした。

ここにある新しいVisual Studio 2017用ビルドツールをダウンロードしてインストールすることで、これを修正できました。

https://www.visualstudio.com/downloads/ -> Other Tools and Frameworks-> Build Tools for Visual Studio 2017-> Download

または、ここに移動してスパムをバイパスします: https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=15

TeamCityのビルドステップを更新して、MSBuild15またはVisualStudio2017を使用してビルドします。

24
Kcoder

Kcoderの提案に従ってVisualStudio 2017のビルドツールをインストールし、後でTeam Cityでビルド手順を調整します(例)。

Switching to VS 2017 build inside Team City

ビルドステップとしてMSBuildを使用する場合は、同様の設定を調整できます。

1
Tore Aurstad