問題タブ [msbuild-task]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2179 参照

visual-studio - Web 配置プロジェクトで WCF サービス参照を更新することは可能ですか

質問のタイトルは、私が求めているものをきちんとまとめていると思います。Web アプリとサービスがあり、前回のビルド以降にサービスが更新されているかどうかをビルド スクリプトで確認し、更新されている場合は、サービスを右クリックしたときに利用できる「サービス参照の更新」スクリプトを実行したいと考えています。 .

何か案は?

0 投票する
1 に答える
918 参照

c# - c#msbuildタスクで同じ名前の複数のアイテムメタデータを取得する

たとえば、次のような場合に、ac#msbuildタスクで同じ名前の複数のアイテムメタデータを取得するにはどうすればよいですか。

<excludeAssembly>通常使用する場合、すべてのメタデータのリストを取得するにはどうすればよいですか。

単一のメタデータ値を取得します。<excludeAssembly>値のリストを取得する必要があります

0 投票する
4 に答える
39254 参照

msbuild - MSBuild タスク構成プロパティ

3 つの Visual Studio ソリューションがあります。1 つ目はReleaseとしてビルドするように構成され、他の 2 つはDebugとしてビルドするように設定されています。

ビルド (デバッグ) する構成を明示的に指定する単純なMSBuildスクリプトを実行すると、最初のプロジェクトは引き続きリリースとしてビルドされます。

サンプル スクリプト:

次のような上記のバリエーションを試しましたが、常に同じ結果になります。

同様の質問があることに注意してください。MSBuild タスク - 1 つのソリューションが debug ではなくリリースでビルドされているためビルドが失敗しますが、これは TFS と Teambuild に固有のものです。私はゼロから作成された単純なプロジェクト ファイルで純粋な MSBuild について話しています。

この問題を解決するにはどうすればよいですか?

0 投票する
2 に答える
1226 参照

html - MSBuild ステップで HTML (WSDL/XSD ドキュメント) を MHT に変換する

皆さん、

Web サービス用に WSDL ファイルと XSD ファイルから生成された HTML がいくつかあります。この 2 つの HTML を、いくつかの画像 (会社のロゴ) と CSS ファイルと共に、連続作業中に単一の MHT ファイルに変換したいと考えています。統合して、顧客 (この Web サービスを使用する社外の他の開発者) に配布できるようにします。

理想的には MSBuild タスクまたはコマンド ライン ユーティリティを使用して、これを自動的に実現したいと考えています。

これを行う簡単な方法はありますか?安価または無料のツール、またはそれを行うための C# ソリューションはありますか?

マルク

0 投票する
3 に答える
28054 参照

visual-studio - ビルド マシンには個別の Visual Studio ライセンスが必要ですか?

一部の企業では、別のライセンスを必要とせずに、必要に応じて自社製品をビルド マシンにインストールできることを知っています (DevExpress が思い浮かびます)。しかし、Microsoft がライセンスに関して同じ許容範囲を持っているかどうか疑問に思っていました。

MSBuild は vdproj を直接サポートしていないため、コマンド ラインから Visual Studio を実行してセットアップ プロジェクトをビルドする必要があります。こちらをご覧ください

自動ビルドでセットアップ ファイルを作成する必要があります。ビルド マシン用に追加のライセンスを購入する必要がありますか?

編集: ライセンスを担当する管理者と話をしたところ、追加のライセンスを購入せずにビルド マシンに VS2008 をインストールできることに満足していました。ここでもっと公式な情報があれば、また更新します。

編集 2 : Microsoft は、開発者がアクティブな開発のためにインスタンスを使用していない限り、ビルド マシンに VS2008 をインストールすることを許可すると聞いています。

0 投票する
2 に答える
1086 参照

visual-studio - Visual Studio に統合されたカスタム MSBuild タスクの動作

すべてのビルドで実行され、Visual Studio UI (2008 が私のバージョン) でうまく動作する NUnit カスタム MSBuild タスクをネットで探していました。すばらしい MSBuild.Community.Tasks プロジェクトを見つけましたが、Visual Studio の統合部分で失敗しました。私が実際に望んでいたのは、失敗したテストを VS のエラー リスト ウィンドウに警告/エラーとして表示することです (また、テストが失敗した場合はプロジェクトのビルドを失敗させます)。そこで、私は自分が望んでいたとおりにジョブを実行する独自のカスタム MSBuild タスクを作成しました。

しかし。

私が持っている唯一の問題は、通常の VS UI エラー リストの動作は、エラーをクリックすると、適切なソース ファイルにジャンプし、問題のあるコードが強調表示されることです。ファイルと行番号を失敗したテストに関連付けることはできましたが、Visual Studio に問題のあるコードを強調表示するよう説得することはできませんでした (エラーをダブルクリックしたとき)。私が得るのは、正しい場所にあるカーソルだけです。lineendLinecolumnendColumnメソッド パラメータ ( )のあらゆる種類の組み合わせを試しLog.LogError()ましたが、役に立ちませんでした。また、コンパイラ エラーによるエラー出力に基づいて、行と列だけを提供しているようにも見えます (終了値はありません)。

誰かがこの奇妙なことにぶつかって解決しましたか?

2009 年 5 月 13 日更新このプロジェクトは、 http://code.google.com/p/nunitmsbuildvsintegrated/
から無料で入手できます (方法を選択する必要はありません)。

0 投票する
3 に答える
9261 参照

msbuild - msbuild によって呼び出されたバッチ ファイルからの終了コードを尊重する

exitコマンドを使用して終了コードを返すバッチ ファイルがあります。

このバッチ ファイルは、場合によっては、コマンドラインから対話的に呼び出すことも、Execタスクを使用して MSBuild プロジェクトの一部として実行することもできます。

  • バッチ ファイル内で使用するexit %errorlevel%と、これはうまく機能し、MSBuild にエラー コードが表示されますが、コマンド ウィンドウからバッチ ファイルを実行している対話型ユーザーは、この場合、cmd.exe の失礼な終了を取得します。
  • exit /b %errorlevel%インタラクティブなシナリオを使用すると、失礼な終了が得られませんが、これはcmd、タスクによって起動されたものも終了しないことを意味するExecため、MSBuild は戻り値を認識しません。

両方の問題の解決策として、exit /b次のようにビルド スクリプトからバッチ ファイルを使用して起動しようとしています。

「非ターミナル」リターンを明示的に取得しexit /b、手動で呼び出して、ビルドタスクが表示できる場所のexit外にこの値を伝播するという考えです。cmd.exeExec

これは完璧な解決策のように思えますが、うまくいきません。Execまだ正しいエラー値が得られません。

0 投票する
2 に答える
651 参照

visual-studio - ターゲットを部分的にビルドしないように MSBuild を強制する方法は?

次のことを行うビルドプロセスがあります。

  1. COM DLL (TaskItem の名前付きグループ) の数 (たとえば 10) に対して TLBIMP を実行します。これは、Exec タスクを使用する「インポート」ターゲットです。
  2. 10 個の相互運用アセンブリで ILDASM を実行します。これは、Exec タスクを使用する「逆アセンブル」ターゲットです。
  3. カスタム タスクを実行して、10 個の IL ファイルすべてを同時に取得し、それらに対していくつかの作業を行います (詳細は重要ではありませんが、このタスクで 10 個の IL ファイルすべてを一緒に処理することが重要です)。これが私の「仕事」の目標です。
  4. ILASM を使用して 10 個の IL ファイルを再アセンブルし、10 個の DLL に戻します。これは私の「アセンブル」ターゲットで、Exec タスクを使用します。
  5. ILMerge を実行して、10 個のアセンブリを 1 つにマージします。これは私の「マージ」ターゲットで、Exec タスクを使用します。

クリーンな再構築を行うと、すべてがうまくいきます。インクリメンタル ビルドを実行し、元の COM DLL のほんの一部が変更された場合、MSBuild は適切なターゲットの部分ビルドのみを正確に実行します。出力は、実際には入力に対して古くなっています。

古いものだけでなく、すべての入力を渡すタスクを実行するために、1 つのターゲット (上記の手順 3) に対してのみ MSBuild を "強制" する方法はありますか? カスタム タスクのコードを変更してファイル名をハードコーディングしたくありません。MSBuild スクリプトから TaskItems として提供したいのですが、カスタム タスクには、この特定のビルドで再構築されたものだけでなく、COM DLL の元の TaskItem グループ。

0 投票する
4 に答える
4528 参照

msbuild - Msbuildは、宛先パラメーターのリストに基づいていくつかの場所にコピーしますか?

いくつかの場所にコピーしたいディレクトリを取得しました。

私が持っていると言う

  • home.aspx

コピーしたい

  • abc / home.aspx
  • def / home.aspx
  • ghi / home.aspx

だから私にとって2つの質問:

  • リストabc、def、ghiを定義するにはどうすればよいですか?
  • このリストの各要素を使用してコピータスクを実行するにはどうすればよいですか?