【问题标题】:stack level too deep error when running any rake task运行任何 rake 任务时堆栈级别太深错误
【发布时间】:2013-01-22 06:25:34
【问题描述】:

我正在将应用程序从 Rails 3.0 升级到 Rails 3.1。作为独角兽服务器,测试运行正常。但是,当我运行任何 rake 任务(“rake routes”甚至“rake about”)时,它会返回“stack level too deep”。使用 Rails 3.0.20 不会发生这种情况。

我已经追踪到 Rails 堆栈,需要单独的库,当我需要 ActiveRecord 或 ActionController 时会发生错误。

我尝试过不同版本的 Rails(从 3.1.0 到 3.2.11)、不同版本的 rake(0.8.7、0.9.2、10.0.3)、不同版本的 bundler(1.1.5 和 1.2) .3) 结果是一样的。我总是使用'​​bundle exec',并尝试使用 binstubs ('bin/rake')。

我仍然没有使用资产管道,所以没有 sass-rails 问题。

我在 OS X Mountain Lion 下使用 RVM,还重新安装了 ruby​​ 1.9.3-p374。我什至在 Vagrant 下使用过 Ubuntu,结果相同。

有人遇到同样的问题吗?

【问题讨论】:

    标签: ruby-on-rails-3.1 rake


    【解决方案1】:

    发现问题:在某些任务中,我们包含了ActionView::Helpers(例如使用 number_to_currency),这就是导致堆栈级别太深错误的原因。

    当您创建一个全新的应用程序和一个带有include ActionView::Helpers 的 .rake 文件时,也会发生这种情况。我将在 Ruby on Rails 上打开一个关于此的问题。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    相关资源
    最近更新 更多