无法加载Rails服务器(3.0.11,ruby 1.9.2),没有这样的文件加载 - sprockets / railtie(LoadError)

时间:2012-01-05 07:33:59

标签: ruby-on-rails sprockets

使用Hartl教程。

命令:rails s

响应:

/Users/davidpardy/rails_projects/sample_app/config/application.rb:8:in `require': no such file     to load -- sprockets/railtie (LoadError)
    from /Users/davidpardy/rails_projects/sample_app/config/application.rb:8:in `<top     (required)>'
    from /Users/davidpardy/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.11/lib/rails    /commands.rb:28:in `require'
    from /Users/davidpardy/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.11/lib/rails    /commands.rb:28:in `block in <top (required)>'
    from /Users/davidpardy/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.11/lib/rails    /commands.rb:27:in `tap'
    from /Users/davidpardy/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.11/lib/rails    /commands.rb:27:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

下面的application.rb文件

require File.expand_path('../boot', __FILE__)

# Pick the frameworks you want:
require "active_record/railtie"
require "action_controller/railtie"
require "action_mailer/railtie"
require "active_resource/railtie"
require "sprockets/railtie"
#require "rails/test_unit/railtie"

if defined?(Bundler)
  # If you precompile assets before deploying to production, use this line
  Bundler.require(*Rails.groups(:assets => %w(development test)))
  # If you want your assets lazily compiled in production, use this line
  #Bundler.require(:default, :assets, Rails.env)
end

module SampleApp
  class Application < Rails::Application
    config.encoding = "utf-8"
    config.filter_parameters += [:password]
    config.assets.enabled = true
    config.assets.version = '1.0'
  end
end

尝试评论链轮,只是创造了更多的问题(不幸的是,没有任何问题)。

WUG的想法?

1 个答案:

答案 0 :(得分:1)

您已将应用程序降级为rails 3.0,但仍有许多地方的应用程序引用3.1仅方法或文件。

sprockets / railtie就是其中之一,你的环境中也会有设置.rb指的是资产管道,也可能是其他一些设置(包裹参数的东西让人想到)。你至少需要删除所有这些。

作为一个刚接触rails的人,我强烈建议你从rails的版本开始,你所遵循的教程就是为此而写的。