2018年02月04日
川俣晶の縁側ソフトウェア技術雑記 total 1899 count

nugetからMessagePackを組み込めない

Written By: 川俣 晶連絡先

問題 §

nugetからMessagePackをUWPのプロジェクトに組み込もうとすると、以下のエラーメッセージで組み込めない。

  • パッケージの復元に失敗しました。'~~~~' のパッケージの変更をロールバックします。

原因 §

 MessagePackは.NET Standard 2.0を必要としているが、これに対応しているWindows 10はビルド16299からになる。しかし、Visual Studioで新規作成したUWPのプロジェクト(Visual Studio 2017 15.5.6の場合)は、【ターゲットバージョン、ビルド16299】【最小バージョン、ビルド10586】となっていて、最小バージョンが条件を満たさない。もっと以前に作成したプロジェクトは、ターゲットバージョンももっと古い場合がある。

解決 §

 プロジェクトの設定を以下のように変更する

  • 【ターゲットバージョン、ビルド16299】
  • 【最小バージョン、ビルド16299】

 ただし、これによりWindows 10 Fall Creators Update以前のWindows 10では動作しないことになる。

参考 §

Announcing UWP Support for .NET Standard 2.0

感想 §

「最初は何の意味があるのか良く分からなかった.NET Standardだが、ここに来て大きな意味を持ってきた」

「確かに1つの基準になっているね」

「それから、【新機能は全部要らないからWindows 10をバージョンアップしない】と言っている利用者は多かったが、16299から.NET Standard 2.0対応したことで、今後はバージョンアップしないと使えるアプリが減っていく問題が発生すると思う」

「同じアプリでもバージョンアップ時にバージョン制限が厳しくなれば、利用者は取り残されちゃうわけだね」

「そうだな。開発者は新機能をどんどん使いたい」

「利用者が【僕はこんなWindows必要ない】といくら言っても開発者は別の考えかも知れないわけだね」

「立場も考え方も違う別の人間だからな」