ruby 无法找出捆绑包安装错误

ua4mk5z4  于 12个月前  发布在  Ruby
关注(0)|答案(1)|浏览(107)

我最近用XCode 15替换了我的XCode 14.3安装。我试图重新克隆一个repo(重新开始),从那以后我就无法运行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。

jexiocij

jexiocij1#

安装命令行工具:
xcode-select --install
您可以尝试重新构建bundle install
gem update --system && gem install bundler
rm Gemfile.lock
bundle install
清除宝石缓存:
gem cleanup

相关问题