Where is the "Gemfile" in Ruby?
Solution 1
The Gemfile is wherever you want it to be - usually in the main directory of your project and the name of the file is Gemfile
.
It's convenient to have one because it allows you to use Bundler to manage which gems and which versions of each your project needs to run.
If you are not using Bundler (which you should!), then you can just install any gems you come across with gem install X
and ignore instructions about adding a line to your Gemfile.
Read more about it here:
Solution 2
Gemfile
is in Rails project, for Ruby run gem environment
to find out about your gem environment:
RubyGems Environment:
- RUBYGEMS VERSION: 2.4.8
- RUBY VERSION: 2.2.1 (2015-02-26 patchlevel 85) [i686-linux]
- INSTALLATION DIRECTORY: /home/gagan/.rvm/gems/ruby-2.2.1
- RUBY EXECUTABLE: /home/gagan/.rvm/rubies/ruby-2.2.1/bin/ruby
- EXECUTABLE DIRECTORY: /home/gagan/.rvm/gems/ruby-2.2.1/bin
- SPEC CACHE DIRECTORY: /home/gagan/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /home/gagan/.rvm/rubies/ruby-2.2.1/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86-linux
- GEM PATHS:
- /home/gagan/.rvm/gems/ruby-2.2.1
- /home/gagan/.rvm/gems/ruby-2.2.1@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /home/gagan/.rvm/gems/ruby-2.2.1/bin
- /home/gagan/.rvm/gems/ruby-2.2.1@global/bin
- /home/gagan/.rvm/rubies/ruby-2.2.1/bin
- /usr/local/heroku/bin
- /usr/lib/lightdm/lightdm
- /usr/local/sbin
- /usr/local/bin
- /usr/sbin
- /usr/bin
- /sbin
- /bin
- /usr/games
- /home/gagan/.rvm/bin
- /home/gagan/.rvm/bin
Notice the two sections for:
- INSTALLATION DIRECTORY
- GEM PATHS
Solution 3
Gemfile is a file which must be located in root of your rails project. It is used for describing gem dependencies for Ruby programs.
The first thing in your gemfile is a source in which you tell the Gemfile where to look for gems.
Source can be called as a block and you can have multiple sources in your gemfile.
source "https://my_awesome_source.com" do
gem "my_gem"
gem "my_other_gem"
end
Here is some documentation where you can read more about gemfile http://bundler.io/gemfile.html
Related videos on Youtube
GluecklichesHuhn
Updated on July 09, 2022Comments
-
GluecklichesHuhn almost 2 years
I often see in documentation on the Internet, "put this in the Gemfile". I don't know where and what this "Gemfile" is. If I install a gem then I have installed it. Who need than a "Gemfile"? Where or what is the Gemfile, and why is it used?
-
Philidor almost 8 yearsNot only in Rails, in any Ruby gems.
-
GluecklichesHuhn almost 8 yearsokay, okay thanks. Because I have a problem: if I install the gem "battery" then it dont functional, if I require it and make it by the instructions. Because under the instruczions stand "Add this to your Gemfile: gem 'battery'", "then run: bundle". What should I do ?
-
Weston almost 8 years@GluecklichesHuhn Please take a look at the "Getting Started" section in the following link. I could not explain it better! bundler.io
-
arced almost 7 yearsthank you. really help me understand ruby. i'am a newbie