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

目次

概要

  • nmakeツールの機能的な後継
  • Visual StudioプロジェクトをIDE無しでビルドできる。
  • タスクを利用すると種々の作業を自動化できる。

タスク

  • タスクを利用すると種々の作業を自動化できる。
  • プロジェクトファイルの<Target>要素にタスクを記載する。

標準タスク

Communityタスク

メモ

MSbuild 14.0

  • Visual Stadio 2015ではMSbuild 14.0がインストール&利用される。
    • C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
    • C:\Program Files (x86)\MSBuild\14.0

MSbuild 15.0

  • Visual Stadio 2017ではMSbuild 15.0がインストール&利用される。
    • C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
    • C:\Program Files (x86)\MSBuild\15.0
  • NuGetのバージョンは、MSbuild 14.0では3.5までとなっており、MSbuild 15.0では4.0以上が必要。
    • 以下の文字列を使用して検索すると情報が見つかる。
      Failed to load msbuild Toolset Could not load file or assembly 'Microsoft.Build, Version=14.0.0.0

トラブルシュート

devenvでのビルドと比べ、チラホラと、エラーが起きる。

NuGet使用時

ビルド時

ビルド時に「error MSB4019 ... `MSBuild\...\Microsoft.WebApplication.targets` was not found...」が発生

最近、Visual Studio 2017のMSBuild(v15.0)に標準同梱されていなくて、
Webアプリケーションのビルドに失敗するケースが増えているようです。

ビルド時に「due to its being in the Internet or Restricted zone or having the mark of the web on the file.」が発生

GitHubから「Download ZIP」して、Explorerで解凍した場合など、この問題が起きます。

ビルド時に「error CS1519 Unexpected symbol 'xxxxx' in class, struct, or interface member declaration.」が発生

C#のバージョン(コンパイラ)の問題らしいです。

dotnetコマンドのビルドで、#if-#endifのDefineConstantsを認識しない

参考


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


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-11-14 (水) 10:10:25 (7d)