問題タブ [msbuild]

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 に答える
7702 参照

msbuild - AssemblyInfo を使用して複数の AssemblyInfo.cs ファイルを自動的に更新する

TeamCity の一部として自動的に構築している単一のソリューションの多くのプロジェクトの一部として、いくつかの AssemblyInfo.cs ファイルがあります。

msbuild スクリプトをより保守しやすくするために、AssemblyInfo コミュニティ タスクを ItemGroup と組み合わせて使用​​できるようにしたいと考えています。

OutputFile は参照される ItemGroup になれないため、これはあからさまに機能しません。

これを機能させる方法を知っている人はいますか?

0 投票する
5 に答える
3231 参照

msbuild - MSBuild プロジェクトのビルド ファイルに付ける名前は何ですか?

MSBuild を使用してプロジェクトをビルドできるように、MSBuild の使用方法を学習しようとしています。ドキュメントには非常に大きな穴のように見えるものがあります。どこを見ても穴があります。穴は、MSBuild プロジェクト ファイルにどのように名前を付けるか、または指定するかということです。

たとえば、Microsoft からダウンロードできる MSBuild のチュートリアルでは、ビルド ファイルの内容について詳しく説明されています。たとえば、Hello World プロジェクト ファイルの一部を次に示します。

そして、それは何とか、何とか、何とかアイテム、何とか何とか何とかタスクに進みます。これを行う方法と、それを行う方法は次のとおりです。だめだ、まったくだめだ。彼らは、この xml ファイルが MSBuild アプリによってどのように認識されることになっているのかを決して言いたがらないからです。特定の方法で名前を付ける必要がありますか?特定のディレクトリに配置する必要がありますか? 両方?ない?

彼らがそれについて語っていないのはMSのチュートリアルだけではありません。MSDN でも、Groups.Google から引き出せるリンクでも、それを見つけることができませんでした。

ここに誰か知ってる?私はそう確信している。

編集して追加: チュートリアルに含まれている .proj ファイルを .csproj ファイルと間違えました。それはかなり明白なはずでしたが、私はそれを見逃しました。

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

c# - .cs ファイルでカスタム プリプロセッサを実行するように msbuild を拡張するにはどうすればよいですか?

C# ファイルを前処理し、新しい C# ファイルを出力として生成するカスタム プログラムがあります。プロジェクト内の各 C# ファイルで msbuild からこれを呼び出し、元の C# ファイルの代わりに出力ファイルをコンパイルしたいと思います。これについてどうすればいいですか?

0 投票する
10 に答える
106244 参照

build - msbuildを使用してすべてのファイルとフォルダーをコピーします

誰かが私が書き込もうとしているmsbuildスクリプトを手伝ってくれるかどうか疑問に思っています。私がやりたいのは、msbuildを使用してすべてのファイルとサブフォルダーをフォルダーから別のフォルダーにコピーすることです。

私ができる必要があるのは、すべてのファイルとサブフォルダーをツールフォルダーからアプリケーションのデバッグフォルダーにコピーすることです。これは私がこれまでに持っているコードです。

ビルドスクリプトは実行されますが、ファイルやフォルダーはコピーされません。

ありがとう

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

tfs - 失敗した Team Foundation ビルドの最後に作業項目の作成を無効にするにはどうすればよいですか?

Team Foundation ビルドを使用していますが、問題の追跡にまだ TFS を使用していないため、失敗したビルドでの作業項目の作成を無効にしたいと考えています。これを行う方法はありますか?ビルド タイプの TFSBuild.proj ファイルの作業項目情報をコメント アウトしようとしましたが、うまくいきませんでした。

0 投票する
6 に答える
7641 参照

msbuild - MSBuild が参照先プロジェクトの参照を取得しない

ちょうど今、MSBuild で奇妙な状況に遭遇しました。LibX、LibY、Exe の 3 つのプロジェクトを持つソリューションがあります。Exe は LibX を参照します。次に、LibX は LibY を参照し、いくつかのコンテンツ ファイルを持ち、サードパーティ ライブラリ (GAC とローカル lib フォルダーの両方にインストールされたいくつかのビルド済みアセンブリ) への参照も持っています。サードパーティ ライブラリは「ローカル コピー」(「プライベート」) としてマークされ、LibY の出力および LibX のコンテンツ ファイルと同様に、LibX プロジェクトの出力に表示されます。現在、Exe プロジェクトの出力には、LibX プロジェクトの出力、LibX プロジェクトのコンテンツ ファイル、LibY プロジェクトの出力 (LibX からのもの) が含まれていますが、サードパーティ ライブラリのアセンブリは含まれていません。

Exeプロジェクトでサードパーティのライブラリを直接参照することでこれを回避しましたが、これが「正しい」ソリューションだとは思いません。

以前にこの問題を抱えていた人はいますか?

0 投票する
8 に答える
10608 参照

visual-studio - MSBuild ディレクトリ構造制限の回避策

コマンド ラインから Visual Studio プロジェクトとソリューションをビルドするための MSBuild ツールの 260 文字の制限を克服する方法はありますか? CruiseControl を使用してビルドを自動化しようとしています (CruiseControl.NET はオプションではないため、通常の ant スクリプトに結び付けようとしています)。パスの長さに関する問題が引き続き発生します。明確にするために、ツールはパスを適切に折りたたまないため、問題はソリューション ファイルで参照されるプロジェクトのパスの長さにあります:(

また、DevEnv を使用してみましたが、これは動作することもあれば、例外をスローすることもあります。これは、別のマシンでの自動ビルドには適していません。したがって、これを代替品として使用することはお勧めしません。

さらに、通常の IDE から Visual Studio を使用すると、プロジェクトが正常にビルドされます。

0 投票する
6 に答える
9290 参照

msbuild - コマンド ラインから DevEnv.exe を実行する場合と比べて、MSBuild または NAnt を使用する場合の利点

MSBuild (または NAnt) のようなツールを使用してプロジェクトのコレクションをビルドすることと、コマンド ラインから DevEnv.exe を実行することの利点を説明できる人はいますか?

過去に一緒に働いていた同僚は、(少なくとも古いバージョンの Visual Studio では) DevEnv.exe を使用すると、他の手法よりもはるかに遅いと説明していましたが、その証拠を読んでいないか、それが現在2005 年以降、Visual Studio は内部で MSBuild を使用しています。

MSBuild を使用する利点の 1 つは、ビルド マシンに Visual Studio をインストールしなくてもプロジェクトをビルドできることを知っていますが、他に利点があるかどうかはわかりませんでした。

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

msbuild - MSBuild を使用して同じソリューション内の 2 番目のプロジェクトにアクセスする

私は MSBuild が初めてで、やり方を知る必要があるので学んでいます。現在、Visual Studio の Web 配置プロジェクト拡張機能から生成された MSBuild ファイルから作業しています。この XML ブロックからプロパティを作成することで、自分の Web プロジェクトに直接あるファイルにアクセスして操作することができなくなりました。

ソリューションの追加プロジェクトから他のファイルを操作するには、同じことを行うプロパティを作成する必要があります。誰でもこれの適切な構文を教えてもらえますか?

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

msbuild - MSBuild - コマンド ラインから呼び出されるターゲットを取得する

MSBuild コマンド ラインから呼び出された TARGET (/t) の名前を取得する方法を知っている人はいますか? 呼び出すことができるターゲットにはいくつかの種類があり、そのプロパティをユーザーへの通知で使用したいと考えています。

例:

ApplicationDeployment.Proj ファイル内のターゲット ワードにアクセスしたい。

アクセスできる物件はありますか?これを行う方法の手がかりはありますか?

編集:これを取得するためにプロパティも渡す必要はありません。

更新:これは、MSBuild スクリプトを使用した展開スクリプトに基づいています。私のビルド サーバーはコードのデプロイには使用されず、ビルドのみに使用されます。ビルド サーバー自体には、オプトインできるビルド通知があります。