如何修复 Ruby gem 捆绑器安装?

How to fix Ruby gem bundler installation?

看起来我的机器上安装了捆绑器,但我在 运行 bundle -v.

时遇到错误

错误:

/Library/Ruby/Site/2.0.0/rubygems/dependency.rb:308:in `to_specs': Could not find 'bundler' (>= 0) among 71 total gem(s) (Gem::MissingSpecError)
Checked in 'GEM_PATH=/Users/username/.gem/ruby/2.0.0:/Library/Ruby/Gems/2.0.0:/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/gems/2.0.0', execute `gem env` for more information
from /Library/Ruby/Site/2.0.0/rubygems/dependency.rb:320:in `to_spec'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_gem.rb:65:in `gem'
from /usr/local/bin/bundle:22:in `<main>'

我不确定哪里出了问题!

更新:

我无法从 gem list

中找到捆绑器

当我 运行 which bundle 时,我看到输出为 /usr/local/bin/bundle 并且在该位置我看到 bundlebundler 可执行文件。

当我 运行 sudo gem install bundler 时,出现以下错误

ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /usr/bin/bundle

已通过禁用系统完整性保护修复它。

要禁用 SIP,请按住 Command+R 并从实用程序和 运行 csrutil disable.

中打开终端,以恢复模式重新启动 MAC

首先让我们看一下基本问题。

/usr/local 的所有者是谁?更改为您的用户

sudo chown -R $(whoami):admin /usr/local

您输入 "bundle" 更新了吗?如果您安装了捆绑软件。

bundle update

如果您没有安装捆绑器,请安装:

gem install bundler

如果您使用的是 rbenv,则需要 运行

rbenv rehash


我 运行 在设置我的全局 rbenv 并从我的 bash 配置文件中采购后遇到了这个确切的问题,如下所示。

vi ~/.bash_profile

插入这两行

eval "$(rbenv init -)"

export PATH="$HOME/.rbenv/bin:$PATH"

来源ruby看rbenv而不是系统ruby

source ~/.bash_profile

运行此处出错

运行 重新哈希

rbenv rehash

问题已解决