抖动图像版本问题

时间:2019-12-28 15:00:07

标签: flutter flutter-test

我刚刚升级了flutter版本,现在在pubsec.yml文件中获取软件包时,我面临以下问题:

  
    

由于sdk中的flutter_test的每个版本都取决于图像2.1.4,而Instant_Feedback取决于图像^ 2.1.9,因此sdk中的flutter_test是禁止的。

  
     

因此,由于Instant_Feedback取决于fld_test来自sdk的任何内容,   版本解析失败。 pub get failed(1; So,因为   Instant_Feedback取决于flutter_test,来自sdk,版本解决   失败。)

我的pubsec.yml文件

dependencies:
  flutter:
    sdk: flutter
  http: ^0.12.0+2
  shared_preferences: ^0.5.4+8
  firebase_messaging: ^6.0.3
  flutter_crashlytics: ^1.0.0
  firebase_core: ^0.4.2+1
  cupertino_icons: ^0.1.3
  device_calendar: ^1.0.0+2
  cloud_firestore: ^0.12.11
  auto_size_text: ^2.1.0
  flutter_expandable_menu: ^0.0.1
  webview_flutter: ^0.3.17
  flutter_spinkit: ^4.1.1+1
  get_it: 2.1.0
  bloc: ^0.15.0
  flutter_bloc: 0.21.0
  equatable: 0.5.1
  rflutter_alert: ^1.0.3
  expandable: ^3.0.1
  connectivity: ^0.4.6
  firebase_auth: ^0.15.1
  flutter_email_sender: ^2.2.1
  mockito: 4.1.1
  flutter_secure_storage: ^3.3.1+1
  image_picker: ^0.6.2+2
  async: any
  image: ^2.1.10
  image_crop: ^0.3.1
  flutter_cache_manager: ^1.1.3
  circular_profile_avatar: ^1.0.3
  package_info: ^0.4.0+12
  flutter_local_notifications: ^0.8.4+3
  flutter_webview_plugin: ^0.3.10
  url_launcher: ^5.2.7
  flutter_localizations:
    sdk: flutter
  flutter_cupertino_localizations: ^1.0.1


dev_dependencies:
  flutter_driver:
    sdk: flutter
  test: any

  ozzie: 2.0.1
  flutter_test:
    sdk: flutter
flutter:
  uses-material-design: true
  assets:
    - lib/app/assets/images/
    - lib/app/assets/flags/
    - lang/en.json
    - lang/de.json

1 个答案:

答案 0 :(得分:2)

由于sdk中的flutter_test的每个版本都取决于图像2.1.4,而Instant_Feedback取决于图像^ 2.1.9,因此sdk中的flutter_test是禁止的。

我遇到了同样的问题。根据此图像库的特定版本,找不到flutter_test的特定原因。也许这是一个扑朔迷离的问题。因此,这里有一些解决方法:

  1. 注释出flutter_test dev_dependency。

    dev_dependencies: # flutter_test: # sdk: flutter

  2. 设置所需的版本。

    我将Image软件包的版本设置为2.1.4(错误消息中的要求),而不是2.1.12

    image: ^2.1.4

  3. 如果多个软件包版本彼此不兼容,并且您不知道它们的确切兼容版本,则可以通过将两个有冲突的依赖项都设置为any来找到它,例如

    flutter_crashlytics: any firebase_core: any

    这将自动找出兼容的软件包版本。在pubspec.lock文件中检查这些新的兼容版本,这些文件将通过运行flutter package get自动生成。

    # Generated by pub # See https://www.dartlang.org/tools/pub/glossary#lockfile packages: flutter_crashlytics: ... version: "1.0.0" firebase_core: ... version: "0.4.2+1"

    用这些正确的版本替换any

    flutter_crashlytics: 1.0.0 firebase_core: 0.4.2+1

注意:您永远不应将版本保留为any