2012-02-14 4 views
20

を構築:違い、私は.NETを使用してCIを行うためにチームシティーを設定しようと、私が持っているランナーを構築する設定だランナーとMSBuildの

  1. のVisual Studio(SLN)
  2. MSBuildの
  3. のVisual Studio 2003

違いは何ですか?なぜ3人が同じタイプのプロジェクトに取り組むのですか? (?私は信じているだけで2003ある2003年を除き、なぜ)

問題を考えると、我々は.exeファイルについては、このビルドランナーがあります

  1. .NETプロセスランナー
  2. コマンドラインを

"コマンドライン"ビルドランナーは.netアセンブリでは使用できません。なぜ.Netプロセスランナー?

答えて

12

のVisual Studio(SLN)
あなたのソリューションは、小さなであり、あなたは、あなたがランナーを構築するのVisual Studio(SLN)を使用することができます派手なことを行うために必要されていない場合。 Project-> Build(VSメニューから)を実行したときとまったく同じことをします。このオプションは構成が非常に簡単で数回クリックするだけでCIサーバーがソリューションをコンパイルします。 MSBuildの
あなたが別の設定ファイルを適用するように、離れて、単純なコンパイルから、より高度なシナリオを行う設定ファイルに変換した値を挿入するなどのバイナリを展開する必要がある場合は

、あなたはMSBuildのオプションを選択することになります。これを使用する必要があるときは、sln builderが処理を行えないことを知っているでしょう。このオプションを使用するには、タスクベースのxml形式のビルドスクリプト言語に関する知識が必要です。

+1

回答ありがとうございます。 Visual Studio(sln)はMSBuildを使用します。 –

+0

VSは、MSBuildで使用できないプロジェクトの種類(たとえば、プロジェクトのセットアップ)を構築できます。それとも少なくともVS 2008の経験だったのでしょうか?おそらくそれは今のところ同期しているかもしれません。 – Joey

+0

@Acazまあ、はい、それはすべてあなたから隠されています。あなたは実際にMSBuildをVS(Project-> Build)で使っていますが、それは分かりません。ここでは、簡単な手順でCIを設定して、プロジェクトを直ちにコンパイルすることができます。 – oleksii

-1

ソリューションファイル(Visual Studio)を使用する場合は、ビルドサーバー用のVisual Studioのコピーを、インストール/メンテナンスと共にライセンスする必要があることを意味します。 MSBuildを使用する場合、その必要はありません。必要なのは.netフレームワークのインストールだけです。この2つの唯一の違いは、Visual Studioにはあらゆる種類の環境変数が設定されており、ビルドオーダーなどが利用されていることです。 MSBuildにはデフォルトで環境変数が設定されておらず、ビルドオーダーは認識されませんが、MSBuildはその機能を再調整するだけです。ビジュアルスタジオではやや簡単になりますが、Visual Studioに依存している場合には、このような場合にはうまくいきません。

+2

申し訳ありませんが、それはそうではありません。私はMSからダウンロードできる無料の両方の製品である '' MSBuild Tools''と '' Windows SDK''だけをインストールしたサーバで '' Visual Studioランナー ''を使って緑色のビルドに出演していますサイト。 – MoonStom

3

MSBuildを使用して.SLNファイル(MSBuild以外のドキュメント)をビルドすると、メモリ内のMSBuildファイルが生成され、指定された構成でビルドするすべてのプロジェクトを参照して実行します。 Visual Studioを使用してビルドする場合は、代わりにDevEnv.comを呼び出しています。

MSBuildファイルではなく、MSBuildだけではビルドできない特定のプロジェクトタイプ(2005/2008のC++と2005/2008/2010のVDPROJ)があります。 1つ以上のプロジェクトが有効なMSBuildプロジェクトでなく、ビルドできなかったという警告が表示されます。

geneneralでは、私はリーンと平均ビルドマシンを維持し、必要に応じてVisual Studioのみをインストールしようとします。

0

私は2つの間にほとんど気づいていません。特に私たちのインスタンスでは、.vdprojをビルドする必要がありました。今すぐに2つのランナーがこれを行うために、コマンドラインランナーまたはVisual Studio(sln)を検索した後。しかし、Visual Studio(sln)ランナータイプを実行すると、次のエラーが発生します。 "[警告] C:\ BuildAgent \ work \ 1bd75058d7bca32b \ POS \ PoSWidgetInstaller \ myInstaller.vdproj.metaproj警告MSB4078:プロジェクトファイル" myInstaller \ myInstaller .vdproj "はMSBuildではサポートされていないため、ビルドできません。

解決策に組み込まれても失敗しません。 私はVisual Studio(sln)ランナータイプは、slnファイルからデータを取り出し、MSbuildでそれを使用すると思います。わかりませんが、私の考えを確認することはできません。

関連する問題