web-dev-qa-db-ja.com

C#6.0TFSビルド

Visual Studio 2015 CTP内でC#6.0の新機能を試していますが、プロジェクトをTFS 2013でビルドできません。 Visual Studio Online

Visual Studioが新しい Roslyn コンパイラーを使用していることを理解しています。これは、ネイティブの.NETコンパイラーを置き換えるため、TFSビルドエージェントはコンパイルできません。

私の質問は、ビルドエージェント(およびVisual Studio Online内)にRoslynをインストールし、ビルドエージェントにネイティブではなくこのコンパイラを使用するように指示する方法です。

18
Chris Pickford

コンパイルステップには、いくつかのオプションがあります。

  1. Microsoft.Net.Compilers NuGetパッケージをプロジェクトごとに参照して、そのバージョンのコンパイラを使用できます。
  2. すべてのVSをインストールしなくても、VS 2015CTPパッケージの一部であるMicrosoftBuildToolsパッケージをインストールできます。

ただし、@ MrHinshが指摘しているように、これらのアプローチでは、ツールチェーンの他の部分が欠落している可能性があります。

12
Kevin Pilch

Server 2012r2でAzure VMを作成し、Visual Studio 2015CTPおよびTFS2013ビルドをインストールすると、VSOに接続できます。

これでビルドが完了するはずで、新しいコンパイラが自動的に使用されます。

コンパイラーをインストールするだけでもかまいませんが、コンパイルするだけでなく、ビルドすることもできます。ビルドの一部として実行するには、単体テストなど、VisualStudioの他の機能がすぐに必要になる可能性があります。ビルドエージェントは、開発者の標準ワークステーションを反映している必要があります。開発者がそれを必要とする場合、エージェントlikleyがそれを必要とします。

注:Visual Studioは、マシンではなく個人にライセンス供与されます。ビルドエージェントで実行するために必要なライセンスはありません。実際、Ultimateなどの特定のレベルに登録された単一のライセンスがある限り、それをすべてのビルドサーバーにインストールできます。

BuildTemplateのProcessセクションのMSBuild引数で/tv:14.0/p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=14.0を使用しました。

0
Jiří Zídek