首页 > 解决方案 > Flutter Pubnub 版本解决失败

问题描述

当我添加pubnub: ^1.4.4到 pubspec.yaml时出现此异常

因为 pubnub >=1.0.2 <3.2.0 取决于 dio ^3.0.0 而 talad_flutter 取决于 dio ^4.0.0,所以 pubnub >=1.0.2 <3.2.0 是被禁止的。所以,因为 talad_flutter 依赖于 pubnub ^1.4.4,版本求解失败。

我试图减少每个库的版本,但仍然不走运。

这是我完整的 pubspec.yaml

name: mytest_flutter
description: A new Flutter project.

publish_to: "none"
version: 1.0.0+1

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^1.0.2
  provider: ^5.0.0
  http: ^0.13.1
  flutter_staggered_grid_view: ^0.4.0
  carousel_slider: ^3.0.0
  countdown_flutter: ^0.1.2
  intl: ^0.17.0
  percent_indicator: ^3.0.1
  custom_refresh_indicator: ^0.9.0
  material_design_icons_flutter: ^4.0.5955
  flutter_spinkit: ^5.0.0
  image_picker: ^0.7.4
  firebase_ml_vision: ^0.11.0+2
  firebase_core: ^1.0.3
  cached_network_image: ^3.0.0
  font_awesome_flutter: ^9.0.0
  cloud_firestore: ^1.0.4
  url_launcher: ^6.0.3
  rflutter_alert: ^2.0.2
  shared_preferences: ^2.0.5
  smooth_star_rating: ^1.1.1
  share: ^2.0.1
  flutter_html: ^1.3.0
  dio: ^4.0.0
  flutter_tags: ^0.4.9+1
  package_info: ^2.0.0
  smart_select: ^4.3.2
  google_maps_flutter: ^2.0.3
  geolocator: ^7.0.3
  timeago: ^3.0.2
  firebase_storage: ^8.0.5
  firebase_messaging: ^9.1.3
  fl_chart: ^0.36.0
  webview_flutter: ^1.0.7
  pubnub: ^1.4.4

dev_dependencies:
  flutter_test:
    sdk: flutter
  flutter_launcher_icons: ^0.9.0

flutter:
  uses-material-design: true

  assets:
    - assets/images/
flutter_icons:
  android: true
  image_path_android: "assets/images/logo.png"
  ios: true
  image_path_ios: "assets/images/logo.png"

标签: flutteryamlflutter-dependenciespubnubpubspec

解决方案


根据 PubNub 工程

  • 这是pubnub包的一个非常过时的版本。目前我们在 3.x 和即将发布 4.x
  • 一般来说,你总是可以使用依赖覆盖来解决 Dart 的此类问题

推荐阅读