highlight

2020年4月10日金曜日

Visual Studio 2019 で project.assets.json がなくてビルドに失敗する

Git から Visual studio 2019 のプロジェクトを clone して複数の端末で開発しようとしていた時の話。

プロジェクトを作り、git の bare リポジトリに push して、別の端末で Visual Studio 2019 を起動して「コードをクローンまたはチェックアウトする」でプロジェクトを作った。 ビルドを実行すると、「obj/project.assets.json がない」というエラーメッセージが表示されてビルドに失敗してしまう、というところから話は始まる。

このファイルが無い問題の解決そのものは簡単で、メニューから、ツール > NuGet パッケージマネージャ > NuGet コンソール、と選んでコンソールを下の画面に表示させて、

dotnet restore

とコマンドを打つだけで、ビルドの際のエラーはでなくなった。エラーは解消されてビルド(dll を作るとか)は成功するが、実行するとエラーになるし、テストエクスプローラを開こうとすると Visual Studio がハングアップする。 各プロジェクト直下にあるはずの「依存関係(Dependency)」なんかも見当たらないし何かがおかしいと思われる。 そこで、この方法でプロジェクト作るときの作法をちゃんと調べてみた。

clone 操作が終了すると、ソリューションエクスプローラで、「上のビューを切り替えるをクリックして、使用可能なビューを切り替えます」とツールチップが出てくるので、その上にある「ビューを切り替える」アイコンのコンボ部分を押すと、*.sln ファイルを選択できるのでそれを選ぶ。 すると、ただの clone ディレクトリが visual studio ソリューションとして認識されるようになり普段の開発作業を行える。 要するに、エラーが出ていたときは、プロジェクトディレクトリを開いただけ、操作後はソリューションファイルを開いた状態ということかと。

0 件のコメント:

コメントを投稿

スパムフィルタが機能しないようなので、コメント不可にしました。

注: コメントを投稿できるのは、このブログのメンバーだけです。