Flutter添加objectbox_generator时报错errno 1314如何解决
报错原因:Windows系统默认限制普通用户创建符号链接,pub工具在处理依赖缓存时需要创建软链接,权限不足就会抛出errno=1314的错误。
解决方案
方案1:开启Windows开发者模式(优先推荐)
- 打开Windows设置 → 隐私和安全性(Win10为「更新和安全」分类)→ 开发者选项
- 开启「开发者模式」开关,系统会自动为当前用户配置创建符号链接的权限
- 重启你使用的终端工具,进入项目目录依次执行如下命令:
flutter clean flutter pub get
重新运行项目即可正常启动。
方案2:以管理员身份运行终端
- 右键点击你使用的终端工具(CMD、PowerShell、VS Code终端入口均可),选择「以管理员身份运行」
- 进入项目目录后执行
flutter pub get,再启动项目即可
注意:该方案每次拉取依赖都需要使用管理员权限启动终端,便利性不如方案1。
方案3:禁用pub缓存的软链接特性
如果上述两种方案都无法使用,可以通过配置环境变量禁用pub创建软链接的逻辑:
- 打开Windows系统环境变量配置页,新增一条系统变量:变量名
PUB_CACHE_OPTION_NO_SYMLINKS,变量值1 - 重启终端使环境变量生效,执行如下命令修复已有pub缓存:
flutter pub cache repair
- 进入项目目录删除
pubspec.lock文件和.dart_tool文件夹,再执行flutter pub get即可。
内容的提问来源于stack exchange,提问作者Burhan Khanzada
相关产品推荐
相关产品推荐

