5

在 Flame 中,我们有一个带有 Flame 及其桥接包的 monorepo,所有的桥接包都将 Flame 作为路径依赖项(而不是在它们发布时)。似乎不可能同时依赖我们的主分支和主分支上的桥接库,我在pubspec.yaml文件中有这个:

dependencies:
  flutter:
    sdk: flutter
  flame:
    git:
      url: git@github.com:flame-engine/flame.git
      path: packages/flame
      ref: main
  flame_fire_atlas:
    git:
      url: git@github.com:flame-engine/flame.git
      path: packages/flame_fire_atlas
      ref: main

dependency_overrides:
  flame:
    git:
      url: git@github.com:flame-engine/flame.git
      path: packages/flame
      ref: main

这样做时,pub get我得到:

Error on line 15, column 11: Invalid description in the "flame_fire_atlas" pubspec on the "flame" dependency: "../flame" is a relative path, but this isn't a local pubspec.
   ╷
15 │     path: ../flame
   │           ^^^^^^^^
   ╵
pub get failed (65;    ╵)

这表明dependency_override未使用,是否无法覆盖路径依赖项?

4

1 回答 1

0

显然这是 pub 中的一个错误,目前解决它的唯一方法是将您需要的依赖项克隆到包期望它们的路径。

所以在这种情况下,我必须克隆我想要使用的火焰分支,../flame与项目 pubspec 文件相关。

于 2021-11-23T10:54:09.040 回答