【问题标题】:RVM bundler installed ERROR: Gem bundler is not installed, run `gem install bundler` firstRVM bundler installed ERROR: Gem bundler is not installed, run `gem install bundler` first
【发布时间】:2013-03-15 20:53:57
【问题描述】:

我开始使用一个新项目,它基于 ruby​​ 1.8.7,我正在使用 rvm 管理我的 ruby​​ 版本,我已经安装了 1.8.7 和 1.9.2。

事情是当我这样做的时候:

rvm use 1.8.7 

并尝试运行:

bundle install

我明白了:

ERROR: Gem bundler is not installed, run `gem install bundler` first.

我已经安装了 5 次 bundler,即使之后它仍然说它没有安装。什么会导致这种情况? Bundle 甚至出现在我的宝石列表中。

来自 cmets 的更新:

which ruby​​ && which gem 的输出:

/home/username/.rvm/rubies/ruby-1.8.7-p371/bin/ruby
/home/username/.rvm/bin/gem

“env | grep -iE 'ruby|rvm|gem' | sort”的输出:

GEM_HOME=/home/username/.rvm/gems/ruby-1.8.7-p371@global
GEM_PATH=/home/username/.rvm/gems/ruby-1.8.7-p371@global
IRBRC=/home/username/.rvm/rubies/ruby-1.8.7-p371/.irbrc
MY_RUBY_HOME=/home/username/.rvm/rubies/ruby-1.8.7-p371
PATH=/home/username/.rvm/gems/ruby-1.8.7-p371@global/bin:/home/username/.rvm/rubies/ruby-1.8.7-p371/bin:/home/username/.rvm/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
RUBY_VERSION=ruby-1.8.7-p371
rvm_bin_path=/home/username/.rvm/bin
rvm_delete_flag=0
rvm_path=/home/username/.rvm
rvm_prefix=/home/username
rvm_ruby_string=ruby-1.8.7-p371
rvm_sticky_flag=1
rvm_use_flag=1
rvm_version=1.17.7 (stable)

未安装并通过 RVM 安装 1.8.7 跑了:

rvm install 1.8.7 --verify-downloads 1

它成功了。

【问题讨论】:

  • 您的路径、RVM 认为它在做什么、正在使用什么 ruby​​/gem 可执行文件或其他一些奇怪的环境问题之间存在一些脱节。尝试运行“which gem”和“which ruby​​”。安装 rvm 后是否重新加载终端窗口?
  • 我已经用命令的输出编辑了我的问题,是的,我确实重新加载了终端。我的电脑里已经安装了rvm很久了。
  • 可以加env | grep -iE 'ruby|rvm|gem' | sort
  • 将该输出添加到问题中!

标签: ruby-on-rails ruby rubygems rvm bundler


【解决方案1】:

您似乎运行了错误版本的 gem。在我的 RVM 设置中,使用 RVM 推荐的 shell 命令覆盖(.bashrc.zshrc 或其他合适的启动文件中的source "$HOME/.rvm/scripts/rvm"),gem 通常是一个 shell 函数。它在幕后做了一些 RVM 魔术,然后运行真正的 gem 命令。在我的例子中,rubygem 都跑出了同一个版本目录:

/home/jim/.rvm/rubies/ruby-1.9.3-p327/bin/ruby
/home/jim/.rvm/rubies/ruby-1.9.3-p327/bin/gem

确保您正在采购 RVM 启动脚本。

您的PATH 看起来不错。确保你有一个/home/username/.rvm/rubies/ruby-1.8.7-p371/bin/gem 命令。如果没有,您可能需要重新安装 ruby​​-1.8.7。

运行rvm current 将显示正在使用的Ruby 版本和gemset。确保路径中有 gem 与 Ruby 版本匹配。

【讨论】:

  • 你说得对,我的ruby 1.8.7文件夹里没有gem命令,我卸载了又安装了,还是没有,现在安装的输出就出问题了。
  • 谢谢你完全正确,当重新安装输出时告诉添加'--verify-downloads 1'到命令中以安装我想要的版本,现在它可以工作了。谢谢!
【解决方案2】:

rvm 安装 ruby​​-1.9.2-p320

使用它并记住关闭所有终端 并在编辑-> 配置文件首选项--> 标题和命令-->> 检查(以登录 shell 运行命令)

【讨论】:

    猜你喜欢
    • 2013-05-02
    • 2016-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多