4

我只是想通过 railsapps.org在线学习 Ruby on Rails书籍。我已经安装了所有东西,并且卡在教程中的“启动 Web 服务器”。

当我执行“$ rails server”时,我得到以下信息:

trick420$ rails server
=> Booting WEBrick
=> Rails 4.1.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Notice: server is listening on all interfaces (0.0.0.0). Consider using 127.0.0.1 (--binding option)
=> Ctrl-C to shutdown server
Exiting
/Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/sprockets-rails-2.1.2/lib/sprockets/railtie.rb:77:in `block in <class:Railtie>': uninitialized constant Sprockets::Rails::VERSION (NameError)
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/activesupport-4.1.0/lib/active_support/lazy_load_hooks.rb:36:in `call'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/activesupport-4.1.0/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/activesupport-4.1.0/lib/active_support/lazy_load_hooks.rb:45:in `block in run_load_hooks'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/activesupport-4.1.0/lib/active_support/lazy_load_hooks.rb:44:in `each'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/activesupport-4.1.0/lib/active_support/lazy_load_hooks.rb:44:in `run_load_hooks'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/application/finisher.rb:64:in `block in <module:Finisher>'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/initializable.rb:30:in `instance_exec'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/initializable.rb:30:in `run'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/initializable.rb:55:in `block in run_initializers'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:226:in `block in tsort_each'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:427:in `each_strongly_connected_component_from'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:347:in `block in each_strongly_connected_component'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:345:in `each'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:345:in `call'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:345:in `each_strongly_connected_component'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:224:in `tsort_each'
from /Users/trick420/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/tsort.rb:205:in `tsort_each'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/initializable.rb:54:in `run_initializers'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/application.rb:288:in `initialize!'
from /Users/trick420/learn-rails/config/environment.rb:5:in `<top (required)>'
from /Users/trick420/learn-rails/config.ru:3:in `require'
from /Users/trick420/learn-rails/config.ru:3:in `block in <main>'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
from /Users/trick420/learn-rails/config.ru:in `new'
from /Users/trick420/learn-rails/config.ru:in `<main>'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/builder.rb:49:in `eval'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/builder.rb:49:in `new_from_string'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/builder.rb:40:in `parse_file'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/server.rb:277:in `build_app_and_options_from_config'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/server.rb:199:in `app'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/server.rb:50:in `app'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/rack-1.5.2/lib/rack/server.rb:314:in `wrapped_app'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/server.rb:130:in `log_to_stdout'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/server.rb:67:in `start'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:81:in `block in server'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:76:in `tap'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:76:in `server'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/railties-4.1.0/lib/rails/commands.rb:17:in `<top (required)>'
from /Users/trick420/learn-rails/bin/rails:8:in `require'
from /Users/trick420/learn-rails/bin/rails:8:in `<top (required)>'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/lib/spring/client/rails.rb:27:in `load'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/lib/spring/client/rails.rb:27:in `call'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/lib/spring/client/command.rb:7:in `call'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/lib/spring/client.rb:26:in `run'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/bin/spring:48:in `<top (required)>'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/lib/spring/binstub.rb:11:in `load'
from /Users/trick420/.rvm/gems/ruby-2.1.1@learn-rails/gems/spring-1.1.2/lib/spring/binstub.rb:11:in `<top (required)>'
from /Users/trick420/learn-rails/bin/spring:16:in `require'
from /Users/trick420/learn-rails/bin/spring:16:in `<top (required)>'
from bin/rails:3:in `load'
from bin/rails:3:in `<main>'

我不知道问题是什么,因为此时我对 Rails 或 Ruby 一无所知。进入门槛很高,不是吗?gem sprockets-rails 似乎存在问题,但我不知道如何处理或从哪里开始,因为我什至还没有开始使用 rails。

4

4 回答 4

3

https://github.com/rails/sprockets-rails/issues/131

等待修复发布或简单地添加到您的 Gemfile

gem 'sprockets-rails', :require => 'sprockets/rails/version'
于 2014-04-11T19:58:29.167 回答
2

添加了对 sprokets-rails 的修复。利用

gem update

更新您的宝石。

sprockets-rails 应该是 2.1.3 版本

然后在 Rails 应用程序的 gemfile.lock 中,将以下行修改为更新后的 gem 版本:

sprockets-rails (2.1.3)

bundle install

并在输出中确认它说:

Using sprockets-rails 2.1.3
于 2014-04-11T20:17:10.593 回答
2

sprockets-rails 团队于 2014 年 4 月 11 日发布了 sprockets-rails gem 的损坏版本(版本 2.1.2)。他们在同一天晚些时候发布了修复版本 2.1.3。

如果您关闭了终端窗口,请打开一个新窗口并使用 Unix“cd”命令导航到您正在构建 Rails 应用程序的项目目录。通过运行以下命令更新 sprockets-rails gem(以及任何其他已过时的):

$ bundle update

然后你可以继续你原来的地方。

祝你学习 Rails 好运(并不总是那么困难)。欢迎来到 Stack Overflow。请务必选择正确的答案,以鼓励帮助过的人。

于 2014-04-12T13:32:48.823 回答
0

我必须使用版本号将我的 sprockets gem 显式添加到 gemfile 中才能使其工作,即

gem 'sprockets', '~> 2.2.1'
于 2016-06-21T14:37:33.903 回答