High Sierra系统Mac中R执行“另存为”时崩溃卡顿求助
解决High Sierra上R“另存为”时崩溃冻结的问题
我之前在运行High Sierra的Mac上碰到过完全一样的R崩溃问题,那个objc[7900]: Class FIFinderSyncExtensionHost is implemented in both...的错误提示就是问题的核心!下面几个亲测有效的解决方案,你可以挨个尝试:
方法1:禁用Finder同步扩展(最直接的临时修复)
这个错误是因为系统里两个框架重复实现了同一个类,和Finder的同步插件密切相关,先把这些插件关掉试试:
- 打开「系统偏好设置」→「扩展」→「Finder」标签页
- 取消勾选所有带有「Finder Sync」字样的扩展(尤其是和iCloud协作相关的那个)
- 重启Finder:打开终端,执行命令
killall Finder,回车后Finder会自动重启 - 重新打开R,测试“另存为”操作
方法2:更新R到兼容High Sierra的最新版本
老版本的R可能和High Sierra的系统框架存在兼容性bug,更新到对应版本能解决很多底层冲突:
- 下载支持macOS 10.13(High Sierra)的R最新稳定版(注意不要下载只支持更高版本系统的安装包)
- 安装后替换掉旧版本的R,再测试文件保存功能
方法3:重置R的用户配置文件
有时候本地的R配置文件损坏或冲突也会触发这类系统调用错误:
- 完全关闭R程序
- 在Finder里按下
Cmd+Shift+G,输入路径~/.R并回车,进入R的配置文件夹 - 把文件夹里的所有文件备份到其他位置,然后删除原文件夹内的内容
- 重新打开R,它会生成全新的默认配置,再尝试“另存为”操作
错误原因补充
这个错误本质是系统层面的类冲突:/System/Library/PrivateFrameworks/FinderKit.framework 和 /System/Library/PrivateFrameworks/FileProvider.framework/OverrideBundles/FinderSyncCollaborationFileProviderOverride.bundle 这两个组件都实现了FIFinderSyncExtensionHost类,当R调用系统的文件保存对话框时,触发了这个冲突,导致程序崩溃冻结。上面的方法都是围绕解决或避开这个冲突来设计的。
内容的提问来源于stack exchange,提问作者Josie South
相关产品推荐
相关产品推荐

