我最近用 XCode 15 替换了我的 XCode 14.3 安装。我尝试重新克隆存储库(以重新开始),但从那以后我无法运行
bundle install
。
当它尝试删除与
json-2.6.3
关联的目录时似乎失败了,但我不知道如何修复它:
Installing json 2.6.3 with native extensions
Installing unf_ext 0.0.8.2 with native extensions
Installing ffi 1.14.2 with native extensions
Building native extensions. This could take a while...
Installing excon 0.104.0
Building native extensions. This could take a while...
9: excon (0.104.0) from /Users/273663872/.gem/specifications/excon-0.104.0.gemspec
Bundler::InstallError: Bundler::DirectoryRemovalError: Could not delete previous installation of `/Users/273663872/.gem/extensions/universal-darwin-22/2.6.0/json-2.6.3`.
The underlying error was Errno::EACCES: Permission denied @ apply2files - /Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2342:in `unlink'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2342:in `block in remove_file'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2347:in `platform_support'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2341:in `remove_file'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2330:in `remove'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:1470:in `block in remove_entry'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2389:in `block (2 levels) in postorder_traverse'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2393:in `postorder_traverse'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2388:in `block in postorder_traverse'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2387:in `each'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:2387:in `postorder_traverse'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:1468:in `remove_entry'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/vendor/fileutils/lib/fileutils.rb:1383:in `remove_entry_secure'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler.rb:332:in `rm_rf'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/rubygems_gem_installer.rb:111:in `strict_rm_rf'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/rubygems_gem_installer.rb:20:in `install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/source/rubygems.rb:203:in `install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/gem_installer.rb:54:in `install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/gem_installer.rb:16:in `install_from_spec'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/parallel_installer.rb:156:in `do_install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/parallel_installer.rb:147:in `block in worker_pool'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:62:in `apply_func'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:57:in `block in process_queue'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:54:in `loop'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:54:in `process_queue'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:90:in `block (2 levels) in create_threads'
Bundler Error Backtrace:
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/rubygems_gem_installer.rb:115:in `rescue in strict_rm_rf'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/rubygems_gem_installer.rb:110:in `strict_rm_rf'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/rubygems_gem_installer.rb:20:in `install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/source/rubygems.rb:203:in `install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/gem_installer.rb:54:in `install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/gem_installer.rb:16:in `install_from_spec'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/parallel_installer.rb:156:in `do_install'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/installer/parallel_installer.rb:147:in `block in worker_pool'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:62:in `apply_func'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:57:in `block in process_queue'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:54:in `loop'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:54:in `process_queue'
/Users/273663872/.gem/gems/bundler-2.4.20/lib/bundler/worker.rb:90:in `block (2 levels) in create_threads'
An error occurred while installing json (2.6.3), and Bundler cannot continue.
In Gemfile:
cocoapods was resolved to 1.12.1, which depends on
cocoapods-core was resolved to 1.12.1, which depends on
algoliasearch was resolved to 1.27.5, which depends on
json
我研究了几个小时,但找不到解决方案。我似乎一直在 StackOverflow 上找到指出未安装命令行工具的文章,但它们已经安装在我的系统上。
我目前正在使用这个 Ruby 版本:
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.x86_64-darwin22]
当我进入
~/.gem/gems
目录时,我什至没有看到 json-2.6.3
列在那里,所以我不确定 DirectoryRemovalError
到底是什么意思。
有人可以帮我解决这个问题吗?我只是想运行
pod install
,但似乎我必须先通过 bundle install
安装一些 gem。
安装命令行工具:
xcode-select --install
您可以尝试重建捆绑安装
gem update --system && gem install bundler
rm Gemfile.lock
bundle install
清除宝石缓存:
gem cleanup