ruby-on-rails - 警告 : Cucumber-rails required outside of env. rb

标签 ruby-on-rails ruby cucumber

基本上,我尝试在我的应用程序中使用 twitter-bootstrap-railsdevise gem。但是,当我尝试执行 rake db:migrate 时,它一直提示 Cucumber。 cucumber-rails 位于 Gemfile 中的 group :development, :test 下。

我的 gem 环境:

RubyGems Environment:
  - RUBYGEMS VERSION: 1.8.17
  - RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.3.0]
  - INSTALLATION DIRECTORY: /Users/user1/.rvm/gems/ruby-1.9.2-p290
  - RUBY EXECUTABLE: /Users/user1/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
  - EXECUTABLE DIRECTORY: /Users/user1/.rvm/gems/ruby-1.9.2-p290/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-11
  - GEM PATHS:
     - /Users/user1/.rvm/gems/ruby-1.9.2-p290
     - /Users/user1/.rvm/gems/ruby-1.9.2-p290@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

在我运行 rake db:migrate 之后,它给了我这条消息:

$ rake --trace db:migrate
WARNING: Cucumber-rails required outside of env.rb.  The rest of loading is being defered until env.rb is called.
  To avoid this warning, move 'gem cucumber-rails' under only group :test in your Gemfile
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
rake aborted!
uninitialized constant User
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.2.0/lib/active_support/inflector/methods.rb:226:in `block in constantize'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.2.0/lib/active_support/inflector/methods.rb:225:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.2.0/lib/active_support/inflector/methods.rb:225:in `constantize'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise.rb:293:in `get'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/mapping.rb:77:in `to'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/mapping.rb:72:in `modules'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/mapping.rb:89:in `routes'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/mapping.rb:156:in `default_used_route'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/mapping.rb:66:in `initialize'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise.rb:327:in `new'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise.rb:327:in `add_mapping'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/rails/routes.rb:206:in `block in devise_for'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/rails/routes.rb:205:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.0.4/lib/devise/rails/routes.rb:205:in `devise_for'
/Users/user1/pachamama/config/routes.rb:4:in `block in <top (required)>'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.0/lib/action_dispatch/routing/route_set.rb:272:in `instance_exec'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.0/lib/action_dispatch/routing/route_set.rb:272:in `eval_block'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.0/lib/action_dispatch/routing/route_set.rb:249:in `draw'
/Users/user1/pachamama/config/routes.rb:1:in `<top (required)>'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:40:in `block in load_paths'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:40:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:40:in `load_paths'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:16:in `reload!'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:26:in `block in updater'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.2.0/lib/active_support/file_update_checker.rb:78:in `call'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.2.0/lib/active_support/file_update_checker.rb:78:in `execute'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:27:in `updater'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/routes_reloader.rb:7:in `execute_if_updated'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application/finisher.rb:67:in `block in <module:Finisher>'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/initializable.rb:30:in `instance_exec'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/initializable.rb:30:in `run'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/initializable.rb:55:in `block in run_initializers'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/initializable.rb:54:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/initializable.rb:54:in `run_initializers'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application.rb:136:in `initialize!'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/railtie/configurable.rb:30:in `method_missing'
/Users/user1/pachamama/config/environment.rb:5:in `<top (required)>'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application.rb:103:in `require_environment!'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.0/lib/rails/application.rb:292:in `block (2 levels) in initialize_tasks'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `call'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:205:in `block in execute'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:200:in `execute'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:158:in `block in invoke_with_call_chain'
/Users/user1/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:176:in `block in invoke_prerequisites'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:174:in `invoke_prerequisites'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:157:in `block in invoke_with_call_chain'
/Users/user1/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:151:in `invoke_with_call_chain'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/task.rb:144:in `invoke'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:116:in `invoke_task'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block (2 levels) in top_level'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `each'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:94:in `block in top_level'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:88:in `top_level'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:66:in `block in run'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/gems/rake-0.9.2.2/bin/rake:33:in `<top (required)>'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/bin/rake:19:in `load'
/Users/user1/.rvm/gems/ruby-1.9.2-p290/bin/rake:19:in `<main>'
Tasks: TOP => db:migrate => environment

最佳答案

将 Gemfile 中的条目更改为:

gem 'cucumber-rails', :require => false

查看这些问题:one , two .

关于ruby-on-rails - 警告 : Cucumber-rails required outside of env. rb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9866264/

相关文章:

html - 在其他 HTML 标签中使用 "link_to"

ruby-on-rails - 无法在 Rails 中为不存在的模型批量分配 protected 属性

javascript - 将 Protractor 与 SystemJS 一起使用的正确方法是什么?

javascript - Rails - 为什么 ajax 不发送参数到 GET 请求

ruby-on-rails - Rails 在父级没有子级时创建默认子级,而在父级有子级时不显示它

javascript - 网站呈现问题 : Safari 4 displays flash of content, 然后白屏

ruby-on-rails - 尽管以 http ://(Rails 2) 开头,但 link_to 外部 URL 仍被视为内部 URL

spring - Cucumber 测试用例一起运行时会失败,但当我单独运行它们时它们会通过

java - 如何编写基于先前功能的 Cucumber 测试?

ruby-on-rails - 如何打印出范围之间的随机数?