无法找到已弃用的RAILS_ROOT的位置

当我加载rails( rails s )时,终端中显示的第一行是:

 DEPRECATION WARNING: RAILS_ROOT is deprecated. Please use ::Rails.root.to_s. (called from /Users/x/Sites/x/config/application.rb:7) 

我一直无法隔离使用它的地方。

上面提到的第7行是:

 Bundler.require(:default, Rails.env) if defined?(Bundler) 

有没有人有任何建议?

你的一个gem是在其初始化代码中使用RAILS_ROOT

从您应用的捆绑目录中,尝试: grep -R RAILS_ROOT .

(如果您使用的是RVM,则bundle目录将位于~/.rvm/gems ;否则它可能是应用程序主目录中的.bundle 。)

你可以像Paul提到的那样搜索问题的根源。 但是你也可以尝试在Gemfile中提升gems的版本。 最近的原因通常是bundler gem,这是(在rvm中)通常在全局gemset中。

尝试使用以下命令来破坏全局gemset中的版本:

 gem update bundler