How to delete the flutter packages in .pub-cache
folder? When we give flutter clean
, it will delete the build folder in the current directory. We can delete it manually, but my requirement is to delete the packages in .pub-cache
folder using the command.
To clear the global PUB_CACHE, run:
dart pub cache clean
or
flutter pub cache clean
flutter pub cache clean
also works –
Consubstantiate If a dependency is removed from the pubspec and then pub get
is run, it removes the dependency from the .packages file, making the dependency unavailable for importing.
If a packages in your pub cache to change or break, you can use flutter pub cache repair
command performs a clean reinstall of all hosted and git packages in the system cache.
Short answer
Delete the pubspec.lock
file then run the command flutter pub get
again.
Long Story
- the command
flutter pub get
will regenerate thepubspec.lock
. - In case your code isn't tracked by a source code version control like
git
, make sure to take a backup copy from yourpubspec.lock
file before deleting it especially if the project is a bit old and you are usingcaret constraint
for package depencedy and not usingconcrete versions
inpubspec.ymal
- if the project didn't compile after applying the answer it could be
caret constraint
issue so you have to update your project to match the new library version or useconcrete versions
inpubspec.ymal
for example
dependencies:
path: 1.3.0
flutter pub get
will regenerate that file again, don't worry –
Questionary pubspec.lock
in source control is optional but; It would be helpful if the project is a bit old and you are using caret constraint
for package depencedy and not using concrete versions
in pubspec.ymal
which would cause other developers to get newer versions in the pubspec.lock
which may cause compilation issues. –
Questionary caret
, which will encourage me to not remove this file :D –
Visualize pubspec.lock
before you delete it if it isn't tracked by a source code version control :D I will add it as a note in the answer. –
Questionary Just go to the terminal and type the command
flutter pub remove package_name
as like
flutter pub remove flutter_riverpod
It took me more than 3 days to try all differently way. But finally I found, you need to go into the "pubspec.lock" file. Then go to the library and change the version there. Then go back to the file "pubspec.yaml" and run Packages get and it succeeds.
Opening a file explorer and deleting the .pub-cache
directory in your home folder is pretty easy. Or you can use a normal command line command:
rm -r ~/.pub-cache
Next time you run
flutter pub get
This will redownload the packages specified in your project's pubspec.lock file. If you also delete pubspec.lock then flutter pub get
will get the most recent non-breaking versions based on your pubspeck.yaml file.
Notes:
- Any global Pub packages are also stored in the
.pub-cache
folder, so you'll have to install them again, too, whenever you need them next. - Depending on what you want to do, you probably don't need to delete
.pub-cache
. That's why there isn't a specific command for it. The only reason I can think of is if you want to save space by deleting the old versions of packages that you aren't using any more.
If you want to remove everything inside your cache folder to reclaim extra disk space or remove problematic packages:
flutter pub cache clean && flutter pub get
To reinstall all packages in the system cache
flutter pub cache repair
© 2022 - 2024 — McMap. All rights reserved.