小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


【VS2017】MSBUILD : error MSB1009: Project file does not exist

はじめに

Visual Studio 2017 + MSBuildでサンプルで作成したソリューションをビルドしようとしたところ以下のエラーになりました。

MSBUILD : error MSB1009: Project file does not exist

コマンドが間違っているのかと思い、slnファイルではなく、vcxprojを指定しても以下のエラーになりました。

MSB4019: インポートされたプロジェクト "C:\Microsoft.Cpp.Default.props" が見つかりませんでした。 宣言のパスが正しいかどうか、およびファイルがディスクに存在して
いるかどうかを確認してください。

  • Windows Server 2016(1607)
  • Visual Studio 2017(15.9.4)
エラーの原因

原因は、Visual Studio 2017をインストールした際、フルインストールしなかったため、MSBuildがインストールされていませんでした。

Visual Studio 2017環境の場合、以下のパスにMSBuildが存在します。検索して別の場所に見つかったのでインストールされているものと勘違いしていました。

C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin

MSBuildのインストール

MSBuildをインストールする場合は、以下のページからTools for Visual Studio 2017をダウンロードします。
visualstudio.microsoft.com
f:id:replication:20190105184943j:plain
Tools for Visual Studio 2017のインストーラを起動して、Visual C++ Build Toolsにチェックを入れて、インストールします。
f:id:replication:20190105185228j:plain

MSBuildでソリューションをビルドする

はじめにコマンドプロンプトで、MSBuildのパスを追加します。

set path=%path%;C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin

以下のように、slnファイルを指定します。

msbuild C:\Users\Administrator\source\repos\ConsoleApplication1\ConsoleApplication1.sln