rubyruby-on-rails-3refinerycms

How to solve 'Bundler could not find compatible versions for gem "jquery-rails"'


Any idea why this error: compatible versions for gem.

  @ -SVE1411EGXB:~/refine/active/myapp$ bundle install
    Fetching gem metadata from https://rubygems.org/........
    Fetching additional metadata from https://rubygems.org/..
    Resolving dependencies...
    Bundler could not find compatible versions for gem "jquery-rails":
      In snapshot (Gemfile.lock):
    jquery-rails (3.1.0)

  In Gemfile:
    refinerycms-core (~> 2.1.2) ruby depends on
      jquery-rails (~> 2.3.0) ruby

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
 @ -SVE1411EGXB:~/refine/active/myapp$ ls
app  config  config.ru  db  doc  Gemfile  Gemfile.lock  lib  log  public  Rakefile  README.rdoc  script  test  tmp  vendor
 @ -SVE1411EGXB:~/refine/active/myapp$ rm Gemfile.lock 
 @ -SVE1411EGXB:~/refine/active/myapp$ bundle install
Fetching gem metadata from https://rubygems.org/........
Fetching additional metadata from https://rubygems.org/..
Resolving dependencies...
Using rake 10.3.2
Using i18n 0.6.9
Using multi_json 1.10.1
~
~
~
~
~
~

Using refinerycms-resources 2.1.2
Using refinerycms 2.1.2
Installing refinerycms-acts-as-indexed 1.0.0
Using sqlite3 1.3.9
Using uglifier 2.5.1
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.
 @ -SVE1411EGXB:~/refine/active/myapp$ rails server
=> Booting WEBrick
=> Rails 3.2.18 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2014-06-22 22:41:21] INFO  WEBrick 1.3.1
[2014-06-22 22:41:21] INFO  ruby 2.1.2 (2014-05-08) [x86_64-linux]
[2014-06-22 22:41:21] INFO  WEBrick::HTTPServer#start: pid=4941 port=3000

Solution

  • The problem was that your refinerycms-core gem relied on an older version of jquery-rails (specifically version 2.3.0).

    Since you were trying to install a newer version of jquery-rails (3.1.0), bundler was warning you that you could break compatibility by installing the newest version.

    When you erased your Gemfile.lock, you erased all the "locked" versions of each Gem that you had, and therefore started from scratch. You will now have the newer version of refinerycms-core which will work with jquery-rails 3.1.0