当其他依赖项依赖它并且它仍在开发中时,Flutter Plugins pub 会发生冲突

Jer*_*hou 2 dart flutter

因为我在 中做了一些更改Plugins/Path_Provider,并且它仍在开发中。

我知道这是expect result因为version conflictforPath_Provider有两个版本,一个 ingit和一个 in pub host

但这仍然是开发时的情况。有没有best practice针对这个特定期限的案例?

pubspec.yml:

dependencies:
  ...
  localstorage: ^2.0.0
  path_provider: #^1.1.0 
    git:
      url: https://github.com/xxxxxxxx/plugins
      ref: dev/path_provider_add_getApplicationLibraryDirectory
      path: packages/path_provider
      version: ^1.1.0 
Run Code Online (Sandbox Code Playgroud)

之后的控制台flutter packages get

[MyApp] flutter packages get
Running "flutter pub get" in MyApp...                            
Because localstorage 2.0.0 depends on path_provider ^1.1.0 and
  no versions of localstorage match >2.0.0 <3.0.0, 
  localstorage ^2.0.0 requires path_provider from hosted.

So, because MyApp depends on both path_provider from git and
  localstorage ^2.0.0, version solving failed.
Run Code Online (Sandbox Code Playgroud)

小智 5

dependency_overrides当然,您可以在 pubspec.yml 中使用它来进行开发。这是详细信息

pubspec.yml:

dependencies:
  ...
  localstorage: ^2.0.0
  path_provider: ^1.1.0 

dependency_overrides:
  path_provider: 
    git:
      url: https://github.com/xxxxxxxx/plugins
      ref: dev/path_provider_add_getApplicationLibraryDirectory
      path: packages/path_provider
      version: ^1.1.0 
Run Code Online (Sandbox Code Playgroud)