[Flutter]2022年3月時点ではDriftパッケージでpath1.8.1を使おうとするとエラーになります(flutter_test from sdk is forbidden)

このページには広告が含まれる場合があります。

 

Flutterで、SQL文を使わずにDartだけで「SQLite」のデータベースが操作できる「Drift(旧:Moor)」というパッケージがありますが、

このパッケージを使う際には、Driftだけではなくて、以下のようにいろんなパッケージを同時に設定する必要があります。

dependencies:
  drift: ^1.4.0
  sqlite3_flutter_libs: ^0.5.0
  path_provider: ^2.0.0
  path: ^1.8.1

dev_dependencies:
  drift_dev: ^1.4.0
  build_runner: ^2.1.7

パッケージのバージョンについてはDriftの公式リファレンスでちゃんと指定してくれており、使う側は普段はそれをそのままコピーして使えるのですが、

2022年3月時点では、そのままコピーしてしまうと以下のようなエラーが出てしまって設定ができない不具合が発生します。

Because every version of flutter_test from sdk depends on path 1.8.0 and my_own_frashcard depends on path ^1.8.1, flutter_test from sdk is forbidden.
So, because my_own_frashcard depends on flutter_test from sdk, version solving failed.
pub get failed (1; So, because my_own_frashcard depends on flutter_test from sdk, version solving failed.)

これは、

  • FlutterのSDKで使っている「flutter_test」というパッケージが「path」パッケージのバージョン1.8.0を使っているが、
  • 自分のプロジェクト(上の例では「my_own_frashcard」)では「path」パッケージのバージョン1.8.1を使おうとしていて
  • 同じパッケージで異なるバージョンを使おうとしているのでダメ

ということが言われていて、「flutter_test」については独立したパッケージではなくてFlutterのSDKに入っているものなので、開発者側からは変えようがないので、こちらで使っているpathのバージョンを1.8.0に変更してやると解消します。

(詳しくは、以下の動画で解説していますので、よろしければご覧下さい)

こんな記事も読まれています

今すぐ無料お試しキットを受け取る

はじめての方へ


みんプロ式プログラミング講座体系・ラインナップ
みんプロ式プログラミング講座受講の流れ(割引特典利用方法)
サイトマップ(みんプロHPコンテンツ一覧)
運営会社概要

みんプロ作成アプリ





TOP