初めてカスタム MSBuild スクリプトを作成し始めたところです。機能を拡張するための標準的なオプションとして、MSBuild Extension PackとMSBuild Community Tasksの 2 つがあります。
これらの違いと、どちらか一方、または両方を使用する理由についてのガイダンスを探しています。Bing で Google を検索しましたが、木に木が見えません。任意のガイダンスをいただければ幸いです。
初めてカスタム MSBuild スクリプトを作成し始めたところです。機能を拡張するための標準的なオプションとして、MSBuild Extension PackとMSBuild Community Tasksの 2 つがあります。
これらの違いと、どちらか一方、または両方を使用する理由についてのガイダンスを探しています。Bing で Google を検索しましたが、木に木が見えません。任意のガイダンスをいただければ幸いです。
チャイムを鳴らします。たった2セントの価値があります。いくつかのこと-まず第一に、私はそれらを正確に「標準」オプションとは呼びません。MSBuild 4.0より前のバージョンと、インラインタスクおよびプロパティ関数の機能とそれらのタスクの多くはほとんど廃止されています。私は数千行のMSBuildを作成しましたが、これらのライブラリのいずれかからのタスクが必要になったのは2、3回だけです。
それらの良いところは、かなりモジュール化されていることです。必要なアセンブリとターゲットファイルのみを選択して選択し、実装全体に「行き詰まる」ことなくコードベースにチェックインできます。同じビルドで、一方のライブラリからタスクを選択し、もう一方のライブラリからタスクを選択することがあります。私は常に、ライブラリ内のものよりも単純なMSBuild4.0機能を使用することを好みます。ライブラリ内のいくつかのタスクに興味がありましたが、動作がまったく必要なものではなかったので、自分で作成しました(このタスクでは、グループでのzipを制御したかったので、zipタスクが思い浮かびます。ソースフォルダとは相関していませんでした)。単一のカスタムタスクを作成する必要があると、すべて同じアセンブリ内で別のタスクをロールするのが非常に簡単になります。
結局のところ、それは実際にはライブラリに関するものではなく、ライブラリ内の特定のタスクに対する非常に具体的なニーズに関するものであり、必要なものを使用し、ビルドを他のものと絡ませないでください。それ。
現在、仕事で MSBuild コミュニティ タスクを使用しています。他の拡張機能との接触はありませんでしたが、このライブラリについてはほとんどわかりません。
長所:
短所:
概要:
これは便利なツールで、インストールと使用が簡単で、コードをより明確にし、理解しやすくし、時間を節約するのに役立ちます。最大の問題はドキュメンテーションだと思いますが、Google でタスクとライブラリの名前を書くだけで、フォーラム、ブログ、およびここでコードを見つけることができます。
私の 2 セント - 私は、バニラの Windows マシン (TFS と VS.NET がインストールされていない) で実行されるプロジェクトのビルド スクリプトをすばやく作成しなければならない状況にありました。ビルドスクリプトは次のことを行うはずでした-
上記のツールを実行し、電子メールを送信する簡単な方法が必要だったので、MSBuild 4.0 の先を見なければなりませんでした。MSBuild Community Tasks と MSBuild Extension pack の両方を見ました。拡張パックは洗練された健全なパッケージであると読んだことがありますが、それでも試してみましたが、コミュニティパックを使用することになりました. . Extensions Pack は、私の意見では、操作方法を理解する時間がある場合にのみオプションです。