【问题标题】:Rake aborted! no such file to load --bundler/setup Rails 3.1瑞克失败了!没有要加载的文件--bundler/setup Rails 3.1
【发布时间】:2011-11-20 23:05:34
【问题描述】:

我是 Rails 的新手。 在我创建了一个新的 rails 项目之后。

rails new test project

我跑了

rake db:create 

为了创建数据库。 发现如下错误信息:

rake aborted!
no such file to load -- bundler/setup

我在跑步

Rails 3.1.0

红宝石 1.9.2p290

rvm 1.8.3

非常感谢!

我的 $PATH /Users/Mac/.rvm/scripts/rvm:/Users/Mac/.rvm/bin:/Users/Mac/.local/bin:/opt/local/bin:/opt/local/sbin:/usr/bin :/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:{ANT_HOME}/bin

【问题讨论】:

  • 我认为修复的最佳方法是删除所有内容(Rails、rvm、gems...等)...@_@
  • 你是如何安装 Ruby 的?试试which rubywhich rakegem list

标签: ruby-on-rails


【解决方案1】:

在您的 Gemfile 中,在 :test 组下添加 gem 'rack'。

【讨论】:

    【解决方案2】:

    在将非 Rails 项目从 Ruby 1.8.x 升级到 Ruby 1.9.x 时,我遇到了与您相同的错误。问题是当前目录已从 LOAD_PATH 中删除。

    Why does Ruby 1.9.2 remove “.” from LOAD_PATH, and what's the alternative?

    我不得不将一些地方从 require 更改为 require_relative,然后它就起作用了。

    【讨论】:

      【解决方案3】:

      我也遇到了同样的问题,我发现:您可能安装了多个版本的 rake(输入 gem list 以查看),并且您的项目指定您必须使用旧版本的 rake。

      如果这样做,则默认 rake 是较新的。

      如果您在项目目录中,并且项目的 Gemfile 指定了旧版本的 rake,并且您的类型 rake db:migrate 则错误消息告诉您“新”版本的 rake 不是您指定的版本在 Gemfile 中,所以运行 bundle exec rake db:migrate 以便 bundler 可以为您选择正确的 rake 版本。

      【讨论】:

        【解决方案4】:

        我也遇到了同样的问题。 我没有完全解决它,而是通过运行:

        bundle exec rake <task> 
        

        我终于能够运行我想要的任务,而不会出现您遇到的错误。

        【讨论】:

          【解决方案5】:

          我正在使用 Snow Leopard,最近遇到了类似的问题。碰巧,由于某种原因,系统更新在 /usr/bin/rake 创建了一个硬链接,指向 OSX 默认的 1.8 ruby​​ 环境 rake 可执行文件。我的 1.9 ruby​​ 安装在 /usr/local/bin,稍后在我的 PATH 设置中出现,所以当我运行“ruby -v”时,我得到了我所期望的,与“gem environment”相同,但是 rake 任务在你描述的方式。

          我刚刚删除了 /usr/bin/rake 条目。在 PATH 上移动 /usr/local/bin 可能也有效。运行“which rake”的结果必须指向你的 1.9 安装。

          希望对你有帮助,

          -- 何塞

          【讨论】:

          • Hola Señor @José Fernandes。 Gracias por tus 评论。这就是我能用西班牙语说的全部内容:P 我想知道你的意思是我必须将我的耙子移动到红宝石所在的 PATH 吗?顺便说一句,我正在使用 RVM。你使用 RVM 吗?我检查了我的 ruby​​ 和 rake 是否位于同一目录中。它应该工作......奇怪!路径... Ruby: /Users/Mac/.rvm/bin/ruby Rake: /Users/Mac/.rvm/bin/rake
          • 您好。我目前没有使用 rvm。如果您的情况与我的情况相似,则在使用“--trace”选项运行 rake 时,您应该会看到一些指向“/Library/Ruby/Gems/1.8/”的输出条目,这是您在任何情况下都应该进行的检查,如果你还没有成功。希望对您有所帮助。
          【解决方案6】:

          升级到 Ruby 1.9.2 后,运行 rake 时得到相同的丢失捆绑器消息。

          需要更新 Rake,需要重新安装捆绑程序:

          sudo gem 更新 rake

          sudo gem 安装捆绑器

          重新安装 bundler 可能已经修复了错误,但您也需要确保 rake 是正确的。

          【讨论】:

          • 是的。我的问题也是在升级到 Ruby 1.9.2 之后。更新 rake 并重新安装 bundler 后仍然无法解决问题... O.o
          • 捆绑器是否运行?你是否更新了 gem 本身,使用:sudo gem update --system
          【解决方案7】:

          运行:

          gem install bundler
          bundle install
          bundle exec rake db:create
          

          您可能想了解Bundler

          查看"Creating new Rails Project"上的链接。

          【讨论】:

          • 嗨。我已经尝试过了,但仍然无法正常工作。在它说在任何来源中都找不到 rake-0.9.2 之后。运行 'bundle install' 来安装缺失的 gem。我检查了我的 gem 列表和捆绑列表中确实存在 rake。还是不明白。感谢您的快速回复。欣赏它,伙计
          • 我在使用 bundler 1.1.5 时遇到了同样的问题。升级到 1.2.1 解决了这些问题。
          • 我只需要:sudo apt-get install bundler。
          【解决方案8】:

          你试过gem install bundler吗?当您安装 rails gem 时它没有安装,我会感到惊讶,但这似乎是您的问题......

          【讨论】:

          • 嗨。我已经尝试过了,但仍然无法正常工作。在它说在任何来源中都找不到 rake-0.9.2 之后。运行 'bundle install' 来安装缺失的 gem。我检查了我的 gem 列表和捆绑列表中确实存在 rake。还是不明白。感谢您的回复。
          • 您是否按照bundle install 的指示运行?找不到安装的某些依赖项的正确版本,bundle install 应该会为您解决所有这些问题。
          【解决方案9】:

          试试

          gem 安装捆绑器

          捆绑安装

          安装所需的 gem。

          如果您没有 rails 应用程序所需的 gem,rake 任务将会失败。

          【讨论】:

            猜你喜欢
            • 2011-10-24
            • 2023-04-06
            • 2013-12-14
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-02-15
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多