Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

undefined method `require_relative' for main:Object (NoMethodError)

When trying to update OpenSSL - I broke (seemingly) everything surrounding Ruby and Rails on my laptop. Even after uninstalling ruby and rails through gem uninstall and rvm removeI am still running into this error:

Drews-MacBook-Pro:bookstore drewwyatt$ rails server
bin/rails:3: undefined method `require_relative' for main:Object (NoMethodError)

Everything has been working fine for months until I went mucking around - the worse part is that I'm not even sure what I did to mess things up.

extra info

Drews-MacBook-Pro:bookstore drewwyatt$ ruby -v
ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.3.0]
Drews-MacBook-Pro:bookstore drewwyatt$ which ruby
/Users/drewwyatt/.rvm/rubies/ruby-2.0.0-p247/bin/ruby
Drews-MacBook-Pro:bookstore drewwyatt$ rails -v
bin/rails:3: undefined method `require_relative' for main:Object (NoMethodError)
Drews-MacBook-Pro:bookstore drewwyatt$ which rails
/Users/drewwyatt/.rvm/rubies/ruby-2.0.0-p247/bin/rails
Drews-MacBook-Pro:bookstore drewwyatt$ 

update - installing without sudo

Drews-MacBook-Pro:~ drewwyatt$ gem install rails
Fetching: railties-4.0.0.gem (100%)
ERROR:  While executing gem ... (Errno::EACCES)
    Permission denied - /Users/drewwyatt/.rvm/gems/ruby-2.0.0-p247/bin/ruby_executable_hooks
Drews-MacBook-Pro:~ drewwyatt$ 
like image 292
drewwyatt Avatar asked Sep 21 '13 16:09

drewwyatt


4 Answers

I fixed the problem by completely removing Rails, Ruby, and RVM altogether - then starting from scratch.

I don't remember all of the commands exactly, but it was something like:

sudo gem uninstall rails
sudo rvm remove 2.0
rvm implode
sudo chown -R drewwyatt: ~/.rvm/
rm -rf ~/.rvm
\curl -L https://get.rvm.io | bash -s stable --rails
rvm use 2.0
gem install rails
like image 58
drewwyatt Avatar answered Oct 08 '22 18:10

drewwyatt


This came up for me after installing rails with Rails Composer. Seems like a problem with RVM selecting the ruby version, the trick was to simply navigate out and back into the folder.

$ cd ..
$ cd myapp

like image 36
tom Avatar answered Oct 08 '22 16:10

tom


I was able to resolve this problem by simply running gem install rails.

This problem occurred when I cloned a pre-existing Rails 4 app. I am using ruby-2.0.0-p317, and an RVM gemset specific to this app. I ran the initial bundle install, but then could not run rails console without getting the error.

After running gem install rails, which used the cached copy in my app's gemset, the problem was resolved. Don't ask my why!

like image 6
platforms Avatar answered Oct 08 '22 17:10

platforms


Try running bundle exec rails server instead of just rails server.

I was seeing this error because I had a conflicting version of the rails gem installed globally.

Prefixing commands with bundle exec ensures that you're using gems specified by your project's Gemfile.lock.

like image 4
ncherro Avatar answered Oct 08 '22 18:10

ncherro