【发布时间】:2020-02-06 21:02:12
【问题描述】:
如何删除.pub-cache文件夹中的flutter包?当我们给flutter clean时,它会删除当前目录下的build文件夹。我们可以手动删除,但我的要求是使用命令删除.pub-cache文件夹中的包。
【问题讨论】:
标签: flutter dart flutter-packages flutter-pub
如何删除.pub-cache文件夹中的flutter包?当我们给flutter clean时,它会删除当前目录下的build文件夹。我们可以手动删除,但我的要求是使用命令删除.pub-cache文件夹中的包。
【问题讨论】:
标签: flutter dart flutter-packages flutter-pub
如果从 pubspec 中删除依赖项,然后运行 pub get,它会从 .packages 文件中删除依赖项,从而使依赖项无法导入。
如果您的 pub 缓存中的某个包发生更改或损坏,您可以使用 flutter pub cache repair 命令对系统缓存中的所有托管和 git 包执行干净的重新安装。
【讨论】:
简答
删除pubspec.lock 文件,然后再次运行命令flutter pub get。
长篇大论
flutter pub get 将重新生成pubspec.lock。git 等源代码版本控制跟踪,请确保在删除之前从您的pubspec.lock 文件中获取备份副本,特别是如果项目有点旧并且您正在使用caret constraint 用于软件包依赖,而不是在 pubspec.ymal 中使用 concrete versions
caret constraint 问题,因此您必须更新项目以匹配新库版本或在pubspec.ymal 中使用concrete versions
例如dependencies:
path: 1.3.0
【讨论】:
flutter pub get会重新生成那个文件,别担心
pubspec.lock 是可选的,但是;如果项目有点旧并且您使用 caret constraint 进行软件包依赖而不是在 pubspec.ymal 中使用 concrete versions 会很有帮助,这会导致其他开发人员在 pubspec.lock 中获得更新的版本,这可能会导致编译问题.
pubspec.lock 的备份,然后再删除它,如果源代码版本控制没有跟踪它:D 我会将其添加为答案中的注释。
要清除全局 PUB_CACHE,运行:
dart pub cache clean
或
flutter pub cache clean
【讨论】:
flutter pub cache clean 也有效
我花了超过 3 天的时间来尝试所有不同的方式。但最后我发现,你需要进入“pubspec.lock”文件。然后去图书馆并在那里更改版本。然后回到文件“pubspec.yaml”,运行Packages get,就成功了。
【讨论】:
打开文件资源管理器并删除主文件夹中的.pub-cache 目录非常简单。或者你可以使用普通的命令行命令:
rm -r ~/.pub-cache
下次跑
flutter pub get
这将重新下载您项目的 pubspec.lock 文件中指定的包。如果您还删除了 pubspec.lock,那么 flutter pub get 将根据您的 pubspeck.yaml 文件获取最新的非破坏性版本。
.pub-cache 文件夹中,因此您也必须在下次需要时重新安装它们。.pub-cache。这就是为什么没有针对它的特定命令的原因。我能想到的唯一原因是,如果您想通过删除不再使用的旧版本软件包来节省空间。【讨论】:
只需转到终端并输入命令
flutter pub remove package_name
喜欢
flutter pub remove flutter_riverpod
【讨论】: