マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

ビルドスクリプトでビルド自動化をすると、かなり生産性向上に寄与する。

ツール

下記ツールを使用してビルドを行うことが出来る。

Visual Studio

コマンドライン

Visual Studioをコマンドラインで呼び出してビルドできる。

devenv /build release solution.sln 
  • *.bat化も容易、多くの要件にはこちらで対応可能。

ビルド・イベント

  • 「ビルド前のイベント」
  • 「ビルド後のイベント」

がある。

例えば、プロジェクト(プロジェクト・ファイル(*.csproj *.vbproj))に、
[ビルド後のイベント]を仕掛けて、プロジェクトのバイナリ出力を配置できる。

参考

MSBuild/NAnt

MSBuild

マイクロソフトのビルド環境であり、通常Visual Studioと一緒に使われている。

  • nmakeツールの(機能的な意味での).NET版
  • Visual StudioプロジェクトをIDE無しでビルドできる。

NAnt

2012年あたりで開発が停止している模様。

  • ビルドツールとは、アプリケーションの構築に必要なソースコードの
    コンパイルを容易にしたり、定型作業を自動化したりできるツールです。
  • NAntの最大の魅力は呼び出せる機能の多さにあります。
    この機能のことをNAntでは「タスク」と呼んでいます。

参考

  • MSBuildがビルド・プロセスの統一と自動化を目標としているのに対し、
  • NAntは最終的には(ビルド・プロセスだけでなく)
    アジャイル開発のプラクティス(=実践項目)の1つである
    継続的インテグレーション」を実現することを目的としている。

そのためNAntの方が、例えばテスト・ツール「NAnt」の呼び出しが標準機能だけで
可能なことなど、あらかじめ用意されているタスクがMSBuildよりも豊富である。

その他

NuGet

  • .NET 向けのパッケージ管理システムで、
    ビルド時に、package.configを見てパッケージを復元する。
    ..\nuget.exe restore "Frameworks\Infrastructure\AllComponent.sln"
  • PackageReference?に切り替え後のビルドでは、NuGetリストアを
    nuget.exe ではなく、MSBuild /t:Restore で行うように変更されている。
    MSBuild.exe /p:Configuration=Debug -v:d /t:Restore XXXXX.sln

dotnetコマンド

.NET Coreではdotnetコマンドを使用する。

トラブルシュート

しかし、色々と問題が起きます。

MSBuild

NuGet

dotnetコマンド

参考

Open棟梁はdevenvやMSBuildを使用した
ビルド バッチ(*.bat)を提供して、
ビルドタスクの自動化を行っている。

https://github.com/OpenTouryoProject/OpenTouryo/tree/develop/root/programs/CS


Tags: :テスト, :デバッグ, :デプロイ, :CI, :.NET開発


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-06-05 (金) 15:54:55 (28d)