MonoGame 3.8.1 で「共有プロジェクトにある mgcb ファイルをダブルクリックしても MGCB Editor を開けない問題」「MGCB Editor でビルドしても無反応な問題」の対応方法

共有プロジェクトにある mgcb ファイルをダブルクリックしても MGCB Editor を開けない問題

まずこの現象については MonoGame 3.8.1 のテンプレートから「MonGame Shared Library Project」を作成すれば確認できます。今回の共有プロジェクトは mgcb がビルドできるので便利です。

作成後「Content/Content.mgcb」をダブルクリックしても MGCB Editor は起動しません。

image

ちなみに他のプロジェクトはダブルクリックすれば開けます。

image

image

MGCB Editor でビルドしても無反応な問題

まず他のゲームプロジェクトで開いた MGCB のプロジェクトはビルドをすれば通ります。

image

しかし、この MGCB Editor から他の MGCB プロジェクト、例えば先ほどの共有プロジェクトで作成された mgcb ファイルや、他のフォルダにコピーした mgcb ファイルを開いてビルドしても全く無反応になります。

image

image

対処方法

他のプロジェクトとの差異を調べてみたのですがどうやら mgcb ファイルのある場所から見て「..\.config\dotnet-tools.json」ファイルがあるかどうかでダブルクリックで開けたりビルドができるようになるみたいです。

image

なので共有プロジェクトの場合は、一度他の MonoGame のプロジェクトを作成してから「.config」フォルダを共有プロジェクトにコピーすればダブルクリックで開けるようになり、ビルドもできるようになるみたいです。

image

image

ちなみにプロジェクトとは全く関係ない場所に mgcb ファイルを置いている場合は下の図のように1階層上のフォルダに .config フォルダを置いておけばビルドはできるみたいです。ちょっといまいちですが。まあ単独でビルドすることはあまりないとは思います。

image

image

ちなみになぜこんなことになっているかというと、OS に MGCB Editor をインストールさせてしまうと、バージョンの異なるプロジェクトが複数あった場合に問題になることが多いため、プロジェクトにくっつけてしまいバージョンは全てプロジェクト依存にさせれば問題はなくなるだろう、ということらしいです。以下の記事にそれっぽいことが書いてありました。