Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What can be done to fix the following error when we run any rails command: " `require_relative': cannot load such file "

Any rails command doesn't work for me. I have several versions of ruby installed through rvm. I tried installing rails with all the versions, they do install successfully but with all of them I face the following error whenever I run any rails command in my project directory:

~ rails new blog
Traceback (most recent call last): 
1: from bin/rails:3:in `<main>'
bin/rails:3:in `require_relative': cannot load such file -- /Users/Am33d/Documents/config/boot (LoadError)

I tried looking up for the error but didn't find any solutions.

What can be done to fix this? I am using macOS Mojave (10.14.6)

like image 888
Am33d Avatar asked Sep 06 '25 07:09

Am33d


2 Answers

This error would indicate that you do not have a boot.rb file in your config directory for some reason. When running rails commands -- regardless of if you run them as bin/rails [command] or bundle exec rails [command], runs the bin/rails file. This file typically has a line require_relative '../config/boot. The boilerplate bin/rails file in a new Rails 6 app is:

#!/usr/bin/env ruby
begin
  load File.expand_path('../spring', __FILE__)
rescue LoadError => e
  raise unless e.message.include?('spring')
end
APP_PATH = File.expand_path('../config/application', __dir__)
require_relative '../config/boot'
require 'rails/commands'

To simply fix this you can create a blank file by running touch config/boot.rb from the root directory of your application and that would itself suppress the error. Having said that, you'd be better off creating a config/boot.rb file that contains useful information. The boilerplate config/boot.rb file is this

ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)

require 'bundler/setup' # Set up gems listed in the Gemfile.
require 'bootsnap/setup' # Speed up boot time by caching expensive operations.

Without this file you are not necessarily appropriately loading the gems from your gemfile or caching operations with bootsnap.

like image 93
Eli Sadoff Avatar answered Sep 07 '25 20:09

Eli Sadoff


When I ran into this problem, I also received the same error when trying to use rails -s.

If the same is happening for you, its because your version of ruby isn't compatible with your rails version.

After upgrading to the latest rails version the error stopped and everything worked well.

like image 29
Khalil Shakir Avatar answered Sep 07 '25 19:09

Khalil Shakir