How to reinstall a gem using bundler
First I did a gem q --L
, the shortcut for gem query --local
. It outputs me the all the local gems installed.
actionmailer (3.2.8, 3.2.6, 3.2.1, 3.1.0)
actionpack (3.2.8, 3.2.6, 3.2.1, 3.1.0)
activemodel (3.2.8, 3.2.6, 3.2.1, 3.1.0)
activerecord (3.2.8, 3.2.6, 3.2.1, 3.1.0)
activeresource (3.2.8, 3.2.6, 3.2.1, 3.1.0)
activesupport (3.2.8, 3.2.6, 3.2.1, 3.1.0)
acts-as-taggable-on (2.3.3)
...
And then, following DVG advice, I uninstalled the gem using its correct name gem uninstall acts-as-taggable-on
and ran bundle install
. After that I was able to rails c
or rails s
again without any problem.
How do I force Bundler to reinstall all of my gems?
bundle install --redownload
See the reference for bundle install
: https://bundler.io/v2.2/man/bundle-install.1.html
or
bundle install --force
For older versions of bundler
Bundler installing gem that's already installed
Try running bundle env
to verify that the install location is what you expect.
If not, check whether there is a .bundle/config
or ~/.bundle/config
file overriding the install path. The output of bundle env
will tell you what configuration it is using and how it was determined (i.e., which file it was in or whether it was picked up from an environment variable).
How to install gems from Gemfile?
run the command bundle install
in your shell, once you have your Gemfile created.
This command will look your Gemfile and install the relevant Gems on the indicated versions.
The Gemfiles are installed because in your Gemfile you are pointing out the source where the gems can be downloaded from.
Your can create a Gemfile just by typing bundle init
in your shell
I add a Gemfile example for your reference:
source "https://rubygems.org" # where gems will be downloaded from
ruby "2.2.3" # ruby version, change for the one you use
gem "sinatra"
gem "sinatra-flash"
gem "sinatra-partial"
gem "bcrypt"
gem "dm-validations"
gem "dm-transactions"
gem "data_mapper"
gem "dm-postgres-adapter"
gem "pg"
gem "database_cleaner"
group :test do # you can make groups for test, development, production..
gem "rspec"
gem "capybara"
gem "rspec-sinatra"
gem "cucumber"
gem "coveralls", require: false
end
reinstall every gem for each ruby version?
Yes. Rbenv (and RVM) have separate "gem home" directories for each installed version of Ruby. There may be ways to symlink certain directories to get them to share, but this will likely lead to problems, particularly with gems that include native C extensions, which may or may not compile and run cleanly in multiple versions.
If you have a Gemfile, easiest thing is to just bundle install
again for Ruby 2.0, giving you duplicate copies of many gems and Ruby-2.0 compiled versions of any native gems.
Bundler: can't find gem bundler (= 0.a) with executable bundle (Gem::GemNotFoundException) during bundle install with gem
Bundler version 2 introduced a new feature to automatically use the version of Bundler specified in the Gemfile.lock
of your project. Thus, if you have an existing Gemfile.lock
with a line like this at the bottom
BUNDLED WITH
1.17.3
Bundler will try to run with a Bundler version < 2.0. Since you just have Bundler 2.0.1 (and Rubygems >= 2.7.0) installed, this fails with this rather unhelpful error message.
To fix this, you could
- remove the lines from your
Gemfile.lock
and to use bundler 2.x everywhere from now on, or - install a bundler 1.x version with
gem install bundler -v '< 2.0'
to use the appropriate version as specified by yourGemfile.lock
.
More information about this can be found on the Bundler blog.
Related Topics
Best Practice About Empty Belongs_To Association
Resque Multiple Workers in Development Mode
Run Ruby Script in the Background
How to Get Request.Uri in Model in Rails
How to Make Object Instance a Hash Key in Ruby
How to Apply a Patch to Ruby on Rails
Ruby Unable to Parse a CSV File: CSV::Malformedcsverror (Illegal Quoting in Line 1.)
How to Create Database from Schema.Rb Without Initializing Rails
Generate Ruby Classes from Xsd
How to Reinstall a Gem Using Bundler
Cannot Install Aptana Plugin on Eclipse 4.2
How to Structure a Layout Template in Haml
Best Way to Cache a Response in Sinatra
Ruby Class with Static Method Calling a Private Method
How to Pass Arguments from the Parent Task to the Child Task in Rake