問題タブ [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.
msbuild - 相対パスが指定されたときに、MSBUILD にフル パスを評価して出力させるにはどうすればよいですか?
<Message />
相対パスが指定された絶対パスをタスクで評価して出力するように MSBuild を取得するにはどうすればよいですか?
プロパティグループ
仕事
出力
「」を「c:\Program Files (x86)\Program\」にコピーしています
msbuild - ファイル名からパスを抽出する MSBuild タスクはありますか?
以下を使用して、コンパイルする必要があるプロジェクト ファイルのリストを取得します。各プロジェクトは、プロジェクト ディレクトリのサブディレクトリに保存されます。
各プロジェクト ファイルがあるディレクトリを抽出するために使用できるタスクはありますか? これを行うための独自のタスクを作成できることはわかっていますが、既に存在していて、まだ見つかっていないことを望んでいました。
msbuild - サブディレクトリ内の MSBUILD タスク アイテム: これらではインクリメンタル ビルドはできませんか?
MSBuild タスクとして単純な Word から Pdf へのコンバーターがあります。このタスクは、Word ファイル (ITaskItems) を入力として受け取り、Pdf ファイル (ITaskItems) を出力として受け取ります。このスクリプトは、変換に Target 変換を使用します。
何が起こっているかというと、SubDir\Two.doc はインクリメンタル ビルドごとに変換されますが、One.doc は変換されません (つまり、MSBuild は既に変換されているため、そのファイルを正しくスキップします)。再帰的な項目の仕様 (上記の 3 番目のもの) を使用すると、同じ動作が得られます (つまり、One.doc は PDF が古いか見つからない場合にのみ変換されますが、サブディレクトリ内のすべてのドキュメントは関係なく常に変換されます)。
ここで何が間違っていますか?
msbuild - MSBuild を使用して不要な拡張機能とフォルダーを除外する
MSBuild を使用して、プロジェクト (および場合によってはフォルダー) で不要な拡張機能を除外するにはどうすればよいですか?
.cs、.resx ファイルなどの拡張子。
msbuild - ClickOnce配置で「最低限必要なバージョン」を自動的にインクリメントしますか?
ClickOnce配置の[最小必須バージョン]フィールドを自動的にインクリメントして、常に現在のビルド番号と等しくする方法はありますか?基本的に、私は常にデプロイメントが起動時に自動的に更新されることを望んでいます。
ビルド前/ビルド後のイベントが必要になると思いますが、もっと簡単な方法があるといいのですが。
visual-studio-2008 - リリース ビルド中に Web サイトをどのように自動展開しますか?
Visual Studio 2008 でリリース ビルドを行うときに、Web サイトを (ftp 経由で) アップロードしたいと考えています。ASP.NET Web アプリケーションまたは MVC を使用しています。最後に展開された Web サイトを自動的にアップロード (および上書き) するように VS.NET を構成するにはどうすればよいですか?
msbuild - MSBuild と MSBuildCommunityTasks (VSS) を連携させるのに問題がある
GetVSS や VssLabel などのタスクの使用方法など、VSS および MSBuildCommunityTasks を使用して特定のソース管理タスクを実行する方法を学習しようとしています。ドキュメントはこれを明確にしません。そして、エラーメッセージが何かを教えてくれるかどうかを確認するためにスティックを突き刺しても、その場合に何をすべきかはあまり明確ではありません. 私が何をしているのか、何を得ているのかをお見せしましょう - 誰かが私を正しい方向に向けてくれることを願っています。
プロジェクトは、VS2005 を使用して C# で記述されています。MSBuild プロジェクト ファイルのソースは次のとおりです。
次のようなエラー メッセージが表示されます。
VSS を指す、特に Microsoft.VisualStudio.SourceSafe.Interop を指すために、ある種のインポート項目をそこに配置する必要があるかもしれませんが、その名前で .dll ファイルを見つけることができません。 Visual Studio の [参照の追加] ダイアログの [.NET] タブにあるコンポーネントのリストで、
version-control - MSBuild -- .csproj ファイルを使用するか、自分で作成しますか?
わかりました。継続的インテグレーションに関しては、私が初心者であることをすぐに認めます。
そうは言っても、自分自身を教育するために CC.NET 環境をセットアップしようとしていますが、自動ビルド部分をセットアップするために必要な情報を見つけるのに苦労しています。
私が理解しているように、C# では、VS 2005 以降で生成された .csproj ファイルは有効な MSBuild ファイルです。つまり、.csproj ファイルを使用して MSBuild タスクを CC.NET に統合できましたが、これにはいくつかの問題があります。
- ここでは、自動化されたビルド環境で本当に必要かどうかわからないことがたくさんあります。
- 私はこのファイルを作成しませんでした。私はそれを理解していません、そしてそれは私を怖がらせます。(偶然によるプログラミング)
- 起こっていることのほとんどは、
$(MSBuildToolsPath)\Microsoft.CSharp.targets
- 1、2、および 3 の結果として、MbUnit のようなものを含めるようにファイルを変更することは、複雑で必要以上に困難に思えます。私の唯一の現実的なオプションは、それを
AfterBuild
セクションに含めることです。これは、私にとってハックのように思えます。
そこで、CC.NET 関係者、MSBuild 関係者、および MbUnit 関係者にいくつか質問します。
- MSBuild を使用する場合、VS で生成された .csproj ファイルをビルド ファイルとして使用することをお勧めしますか? それとも自分で作成する必要がありますか?
- MbUnit テストは、MSBuild ファイルまたは CC.NET ファイルの一部にする必要がありますか? 私の調査によると、それらは MSBuild ファイルに属しているようです。その場合、新しい MSBuild .proj ファイルを作成し、.csproj ファイルに加えて CVS にチェックインしますか? または、MbUnit タスクは .csproj ファイルの一部になりますか?
- 質問 2 と同様です。MbUnit テストを MSBuild ファイルに追加し、.csproj ファイルを使用することになった場合、
Target Name="AfterBuild"
その情報を追加するセクションは本当に必要ですか? セクションがあってはいけませんTarget Name="Test"
か?VS で生成された .csproj ファイルを使用すると、2 番目のオプションが妨げられるようです。
そこにたくさんあることは知っていますが、オンラインで見つけることができたもののほとんどは、私が持っていないこれらのトピックにある程度精通していることを前提としています.曲線ではなく、ステップ関数です。:)
編集 1: テキストを更新して、もう少し簡潔にし、回答に関するいくつかの長引く質問に対処しました。
tfs - 前回の正常なビルド以降の TFS の変更をプログラムで見つける
TFS にいくつかのブランチ (開発、テスト、ステージ) があり、変更をテスト ブランチにマージするときに、自動化されたビルドおよびデプロイ スクリプトを使用して、更新されたすべての SQL ファイルを検索し、それらをテスト データベースにデプロイします。
前回の適切なビルド以降にビルドに関連付けられたすべての変更セットを見つけ、変更セット内のすべての sql ファイルを見つけて展開することで、これを行うことができると思いました。ただし、何らかの理由で変更セットがビルドに関連付けられていないように見えるため、質問は2つあります。
1) 変更セットが特定のビルドに関連付けられていることを確認するにはどうすればよいですか?
2) 前回の正常なビルド以降にブランチで変更されたファイルのリストを取得するにはどうすればよいですか? 私は最後に正常にビルドされたビルドを持っていますが、変更セットをチェックせずにファイルを取得する方法がわかりません (上記のようにビルドに関連付けられていません!)
msbuild - NUnitおよびNAntの将来の考慮事項
.NET v1の期間中、私はNUnitとNAntの追加ツールを使用して、テスト駆動および自動ビルドの作業習慣を開発するよう同僚を説得することに成功しませんでした。.NETFramework2.0とVisualStudio2005 Team Suiteが登場したとき、私はチームにテストの作成を「強制」し、VisualStudio内で視覚的なテストを提供することができました。さらに、追加のMSBuildタスクを使用してプロジェクトファイルを微調整し、ビルドの自動化をさらに実行することができました。
もちろん、これはマイクロソフトが完璧なシステムを提供したことを意味するものではありませんが、彼らはこれらを正しいステップで進めてきたと思います。これらすべての機能がフレームワークと製品に組み込まれ、「ネイティブ」になることで、開発者をより良い開発手法に移行させることが少し簡単になりました。
オープンソースのオプション(私は見逃している)を長い間忘れていたので、NUnitとNAntの現在の化身はどのような価値提案を持っているのだろうかと思います。チームにMSBuildまたはMSTestを使用しないように説得するために、この段階でどのようなケースを主張できますか?
明確化:私の会社は純粋なMicrosoftSIです。Visual Studio Team Suiteエディション、Database Professionalエディション、TFSなどを使用できます。VisualStudioProfessionalエディション以下は使用していません。