【问题标题】:Not able to run bundle install or for that matter rails -v Rails 3.1.2无法运行捆绑安装或就此而言 rails -v Rails 3.1.2
【发布时间】:2012-01-15 20:59:16
【问题描述】:

我在使用 RVM 时遇到问题,因此我尝试卸载所有内容(Ruby、RVM 和 Rails)并重新开始。

我安装了 Ruby 1.9.2 和 Rails 3.1.2 rc2,我正在使用 Ubuntu 10.0.4。如果我从命令提示符执行 ruby​​ -v,我可以看到安装的 ruby​​ 版本,rails -v 也是如此。

但是,一旦我进入应用程序目录并尝试检查 rails -v 我就会收到此错误

“在任何来源中都找不到 rake-0.9.2 运行 bundle install 来安装缺失的 gem。”

如果我进行捆绑安装,我会收到此错误

“bash: /usr/bin/bundle: /usr/bin/ruby1.8: 错误的解释器:没有这样的文件或目录”

似乎没有任何效果,我陷入了卸载和安装的递归循环中。

一切正常,直到出现错误 linecache19,它需要 Ruby >=1.9.2(我之前使用的是 1.8.7)。我安装了 RVM 和 Ruby 1.9.2,我不得不卸载 RVM 和 1.8.7,我尝试安装以将 Ruby 1.9.2 作为独立包安装。这显然是行不通的。

请帮忙!!

【问题讨论】:

  • 看起来 bundler 正在尝试使用系统 ruby​​。尝试打开一个新的 shell 并再次运行 bundle 命令。您还可以检查which bundle 的输出以了解它是否使用了正确的捆绑程序。此外,FWIW,我认为 rbenv 与 rvm(对你的 shell 执行各种巫术操作)相比,产生的头痛要少得多(阅读,基本上没有)。
  • @d11wtq 我运行了哪个包并得到输出为 /usr/bin/bundle。即使我尝试从新的 shell 运行 bundle install 我仍然得到 bash: /usr/bin/bundle: /usr/bin/ruby1.8: bad interpreter: No such file or directory 错误。我已经卸载了 RVM
  • @DevR 您仍在使用“旧”系统包。你试过强制使用 RVM 吗?
  • @AllanNørgaard 我已经完全卸载了 RVM
  • @DevR 好的,那我误解了你的意思。然后你安装了什么?你想做什么工作,ubuntu 存储库 ruby​​/bundler?

标签: ruby ruby-on-rails-3.1 ubuntu-10.04


【解决方案1】:

如果您卸载了以前安装的 Ruby 版本(在我的情况下是 Ruby 1.8.7)并尝试在不使用 RVM 的情况下安装最新的 Ruby 版本(我试图安装 1.9.2)。我通过在命令提示符下搜索 $whereis ruby 手动删除了所有 Ruby 版本。

之后我安装了一个ruby1.9.2。在我现有的 rails 应用程序中,我遇到了很多错误,因为该应用程序创建了对早期安装的 ruby​​ 版本(1.8.7)的引用,并尝试在早期安装的位置查找 gem。

所以,一旦您安装了新版本并希望在您的应用程序引用旧版本的 ruby​​ 时运行早期开发的应用程序搜索。

在我的情况下,我必须将 script/rails 中的路径从 #!/usr/bin/env 更改为 #!/usr/local/bin/ruby

您可能还需要在路径变量中添加已安装的最新 Ruby 的路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-10
    • 2015-02-17
    • 1970-01-01
    相关资源
    最近更新 更多