Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error while trying angularjs with rails:undefined method `register_engine' for nil:NilClass (NoMethodError)

I am new to both angularjs and rails. In my new company we have to use ruby on rails with angularjs. After takingup tutorials for angularjs and ruby on rails separately, I was trying how the both would work together using the following link: https://thinkster.io/angular-rails#generating-activerecord-models After following all steps till the topic "Integrating the Front-end with the Asset Pipeline" (including steps in this topic) when I run rails s command the following error comes:

=> Booting WEBrick
=> Rails 4.2.5 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
Exiting
**/home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/angular-rails-templates-0.1.4/lib/angular-rails-templates/engine.rb:49:in `block (2 levels) in <class:Engine>': undefined method `register_engine' for nil:NilClass (NoMethodError)**
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/angular-rails-templates-0.1.4/lib/angular-rails-templates/engine.rb:39:in `each'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/angular-rails-templates-0.1.4/lib/angular-rails-templates/engine.rb:39:in `block in <class:Engine>'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/initializable.rb:30:in `instance_exec'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/initializable.rb:30:in `run'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/initializable.rb:55:in `block in run_initializers'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:226:in `block in tsort_each'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:429:in `each_strongly_connected_component_from'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:347:in `block in each_strongly_connected_component'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:345:in `each'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:345:in `call'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:345:in `each_strongly_connected_component'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:224:in `tsort_each'
    from /home/cb/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/tsort.rb:203:in `tsort_each'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/initializable.rb:54:in `run_initializers'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/application.rb:352:in `initialize!'
    from /home/cb/flapper-news/config/environment.rb:5:in `<top (required)>'
    from /home/cb/flapper-news/config.ru:3:in `require'
    from /home/cb/flapper-news/config.ru:3:in `block in <main>'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/builder.rb:55:in `instance_eval'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/builder.rb:55:in `initialize'
    from /home/cb/flapper-news/config.ru:in `new'
    from /home/cb/flapper-news/config.ru:in `<main>'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/builder.rb:49:in `eval'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/builder.rb:49:in `new_from_string'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/builder.rb:40:in `parse_file'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/server.rb:299:in `build_app_and_options_from_config'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/server.rb:208:in `app'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/server.rb:61:in `app'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/rack-1.6.4/lib/rack/server.rb:336:in `wrapped_app'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/server.rb:139:in `log_to_stdout'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/server.rb:78:in `start'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:80:in `block in server'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:75:in `tap'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:75:in `server'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/railties-4.2.5/lib/rails/commands.rb:17:in `<top (required)>'
    from /home/cb/flapper-news/bin/rails:9:in `require'
    from /home/cb/flapper-news/bin/rails:9:in `<top (required)>'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/lib/spring/client/rails.rb:28:in `load'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/lib/spring/client/rails.rb:28:in `call'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/lib/spring/client/command.rb:7:in `call'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/lib/spring/client.rb:28:in `run'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/bin/spring:51:in `<top (required)>'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/lib/spring/binstub.rb:11:in `load'
    from /home/cb/.rvm/gems/ruby-2.2.3@flapper-news/gems/spring-1.6.0/lib/spring/binstub.rb:11:in `<top (required)>'
    from /home/cb/flapper-news/bin/spring:13:in `require'
    from /home/cb/flapper-news/bin/spring:13:in `<top (required)>'
    from bin/rails:3:in `load'
    from bin/rails:3:in `<main>'

Using rails version 4.2.5

Following is a snippet of the Gemfile:

    source 'https://rubygems.org'

    gem 'angular-rails-templates'

    gem 'rails', '4.2.5'

    gem 'sqlite3'

    gem 'sass-rails', '~> 5.0'

    gem 'uglifier', '>= 1.3.0'

    gem 'jbuilder', '~> 2.0'

    gem 'sdoc', '~> 0.4.0', group: :doc


    group :development, :test do

      gem 'byebug'

    end

group :development do

gem 'web-console', '~> 2.0'

gem 'spring'

end
like image 411
Ashi Avatar asked Dec 21 '15 08:12

Ashi


1 Answers

I had the same issue. It was a problem related with 'sprockets'. Try to install an older version adding gem 'sprockets', '2.12.3' to your gem file and then update your gems by running bundle update. It worked for me.

like image 170
Mario Avatar answered Nov 15 '22 17:11

Mario



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!