【问题标题】:rbenv: ruby: command not foundrbenv:红宝石:找不到命令
【发布时间】:2014-02-12 02:22:38
【问题描述】:

我在本地目录上使用 rbenv 和 ruby​​ 版本 1.9.1-p378。

命令 ruby -v 给出以下错误:

rbenv: ruby: command not found

The `ruby' command exists in these Ruby versions:
2.0.0-p353

任何线索为什么会发生这种情况? bundle、rails 命令也不起作用。

命令 rbenv 版本

* 1.9.1-p378 (set by /home/user/Desktop/r1/noko1/.ruby-version)
2.0.0-p353

【问题讨论】:

  • 如您所见:ruby 应用程序仅存在于 ruby​​ 2.0.0 版本中,不存在于 1.9.1 中,只需将 ruby​​ 切换到 2.0.0
  • 您真的(真的)不想使用 Ruby 1.9.1,因为它在多个方面(编码、rubygems 等)都被破坏了,并且通常不受任何人的支持。如果你想使用 1.9 的 Ruby,你应该至少使用 Ruby 1.9.2。

标签: ruby rbenv


【解决方案1】:

我遇到了同样的问题rbenv: ruby: command not found,最终通过删除 rbenv-bundler 插件解决了这个问题。这个插件是considered harmful,删除它就像rm -rf $RBENV_ROOT/plugins/bundler一样简单,然后运行rm -rf $(rbenv root)/shims && rbenv rehash

【讨论】:

    【解决方案2】:

    请使用 rbenv global ruby​​-version 将 gem 设为全局。

    【讨论】:

      【解决方案3】:

      即使上面有正确答案,但我第一次检查并不清楚,所以根据z5h和Thengugi的答案给出一个完整的答案作为总结。 使用 rbenv 设置并安装 ruby​​ 后,如下所示(我安装的是 2.5.0):

      rbenv install 2.5.0
      

      您还需要将其设置为操作系统中的默认版本(对我来说是 CentOS):

      rbenv global 2.5.0
      

      【讨论】:

        【解决方案4】:

        如果您没有设置,即使设置全局或本地也不起作用

        echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
        echo 'eval "$(rbenv init -)"' >> ~/.zshrc
        exec $SHELL
        

        【讨论】:

          【解决方案5】:

          根据您安装的当前版本的 rails 尝试以下代码。就我而言,我正在使用v2.3.3

          rbenv global 2.3.3
          

          【讨论】:

          • 作为一个完全不熟悉 Ruby 的人,这是唯一对我有用的东西,
          • 我必须这样做来告诉 rbenv 使用哪个版本的 ruby​​。插入您使用 rbenv install x.y[.z] 安装的任何版本(在我的情况下为 2.7.0)。现在 ruby​​ -v 按预期工作
          【解决方案6】:
          1. 您收到的投诉来自 rbenv。它在抱怨的事实表明 rbenv 已设置并且可以正常工作。

          2. 找出运行项目所需的 Ruby 版本。要么项目在根目录中带有 .ruby-version 文件,要么项目中的某个人知道并推荐使用该版本。

          3. 如果 .ruby-version 文件中没有指定版本,则在项目目录中创建 .ruby-version 文件。

          4. 在该目录中键入ruby -v。可以吗?然后,您安装了与您的 .ruby-version 要求相匹配的 Ruby 版本。

          5. 如果最后一个命令不正确,则输入rbenv install

          现在 Ruby 已安装,您需要运行您的程序。我假设它带有一个 Rakefile。

          1. 安装打包工具:gem install bundler

          2. 安装项目的依赖:bundle install

          3. 使用它指定的库的确切版本运行您的项目:bundle exec rails server

          【讨论】:

          • 我正在尝试运行一个应用程序,当我尝试使用 2.0.0 运行它时会出现问题。关于 rbconfig/config 的一些东西。这就是我尝试将它与 1.9.1 一起使用的原因。它还使用我从应用程序的 gemfile 中收集的 rails 2.3.2。但是 rails 命令也不起作用...
          • 我已经做了一步一步的说明。告诉我进展如何。
          • 是的!谢谢,[rbenv install] 让 ruby​​gems 工作 - 然后 [gem install bundler] 有很大帮助。但是,我还有大约 4 或 5 件其他事情需要修复,包括将 [gem rdoc] 添加到 gemfile 并安装一些其他必需的 gem,例如 sqlite 等,最后再次降级 ruby​​gems 版本以便使用 ./script/server start for导轨 2.3.2 ;但毕竟它有效!感谢捆绑
          • 对于那些仍然遇到这个问题的人,请先尝试关闭您的终端,然后再试一次。为我工作。
          【解决方案7】:

          看来您需要rbenv install 要使用的 ruby​​ 版本,因为只有 2.0.0-p353 可用。见rbenv help

          【讨论】:

          • 我认为它已安装,当我使用 rbenv 版本时,请查看我的编辑
          • 您可以分享您在所需目录中的.rbenv-version 文件吗?
          • 只有一行:1.9.1-p378
          猜你喜欢
          • 2013-03-27
          • 2016-02-15
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-12-10
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多