[Flutter] pub-cache upgrade

Ohgyuchan·2022년 7월 16일
0

Flutter

목록 보기
13/25
post-thumbnail

문제

Flutterdart pub을 통해 dart package를 관리. package들은 .pub-cache 디렉토리에 version 정보가 쌓이게 된다. 따라서 pubspec.yaml 에서 package 들의 versionupgrade 하더라도 남아 있는 cache 때문에 new version 으로 Flutter project가 작동 안 될 때가 있는 것으로 보임.

 where TResult is a type-variable:
    TResult extends Object declared in method <TResult>call(Executor,Callable<TResult>)
/Users/terman/.pub-cache/hosted/pub.dartlang.org/firebase_storage-10.2.12/android/src/main/java/io/flutter/plugins/firebase/storage/FlutterFirebaseStoragePlugin.java:226: warning: [deprecation] <TResult>call(Executor,Callable<TResult>) in Tasks has been deprecated
    return Tasks.call(
                ^

Flutter 3.0으로 올리니 갑자기 이런 메시지가 떳습니다. 빌드가 안 되는 건 아닌데 .pub-cache 디렉토리에 있는 파일 내용입니다.

pub-cache clean & upgrade

Flutter 3.0 Migration 과 함께 기존 Package들 version-up 을 했는데 pub-cache가 남아있어서 충돌이 나는 현상이 발생

Solution

$ flutter pub upgrade

해봐도 안되면 아래 내용 Try

pubspec.yaml 에서 dependencies 하위 패키지들을 주석처리 한 후 flutter pub get

dependencies:
  flutter:
    sdk: flutter

  # cupertino_icons: ^1.0.2
  # get: ^4.6.1
  # firebase_core: ^1.11.0
  # firebase_auth: ^3.3.5
  # firebase_storage: ^10.2.5
  # cloud_firestore: ^3.1.6
  # google_fonts: ^3.0.1
  # table_calendar: ^3.0.3
  # intl: ^0.17.0
  # cached_network_image: ^3.2.0

그 다음 주석을 해제하고 아래 순으로 명령어 실행

flutter clean
flutter pub get
flutter run
모든 cache 지우는 명령어
flutter pub cache clean

틀린 내용이 있다면 지적해 주시면 감사하겠습니다.

profile
Flutter 개발자

0개의 댓글