Bundler could not find compatible versions for gem

2019-04-28 16:53发布

I successfully installed the Railsinstaller on a Win 8 PC and started a project. I set up github and pushed the project to it. On the first PC everything was working find. Then I installed the Railsinstaller on a second Win 8 PC. On the second PC, I ran gem update rails. Then I ran git clone [url] and that was also successful. But I cannot start the rails server because a gem is missing. Here is the output of gem list:

actionmailer (4.0.0, 3.2.13)
actionpack (4.0.0, 4.0.0.rc2, 3.2.13)
activemodel (4.0.0, 3.2.13)
activerecord (4.0.0, 3.2.13)
activerecord-deprecated_finders (1.0.3)
activerecord-sqlserver-adapter (3.2.10)
activeresource (3.2.13)
activesupport (4.0.0, 4.0.0.rc2, 3.2.13)
arel (4.0.0, 3.0.2)
atomic (1.1.10)
bcrypt-ruby (3.1.1 x86-mingw32)
bigdecimal (1.1.0)
builder (3.1.4, 3.0.4)
bundler (1.3.4)
coffee-rails (4.0.0, 3.2.2)
coffee-script (2.2.0)
coffee-script-source (1.6.1)
devise (3.0.0)
diff-lcs (1.2.4)
erubis (2.7.0)
execjs (1.4.0)
hike (1.2.1)
i18n (0.6.4, 0.6.1)
io-console (0.3)
journey (1.0.4)
jquery-rails (3.0.4, 2.2.1)
json (1.5.5)
mail (2.5.3)
mime-types (1.21)
minitest (4.7.5, 2.5.1)
multi_json (1.7.1)
orm_adapter (0.4.0)
pg (0.14.1 x86-mingw32)
polyglot (0.3.3)
rack (1.5.2, 1.4.5)
rack-cache (1.2)
rack-ssl (1.3.3)
rack-test (0.6.2)
rails (4.0.0, 3.2.13)
railties (4.0.0, 4.0.0.rc2, 3.2.13)
rake (10.0.3, 0.9.2.2)
rb-readline (0.4.2)
rdoc (3.9.5)
rspec (2.14.1)
rspec-core (2.14.4)
rspec-expectations (2.14.0)
rspec-mocks (2.14.1)
rspec-rails (2.14.0)
rubyzip (0.9.9)
sass (3.2.7)
sass-rails (4.0.0, 3.2.6)
sprockets (2.10.0, 2.2.2)
sprockets-rails (2.0.0)
sqlite3 (1.3.7 x86-mingw32)
sqlite3-ruby (1.3.3)
thor (0.18.1, 0.17.0)
thread_safe (0.1.0)
tilt (1.3.6)
tiny_tds (0.5.1 x86-mingw32)
treetop (1.4.12)
tzinfo (0.3.37)
warden (1.2.3)

I tried bundle install:

Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    rspec-rails (= 2.6.1) x86-mingw32 depends on
      railties (~> 3.0) x86-mingw32

    sass-rails (~> 4.0.0) x86-mingw32 depends on
      railties (4.0.0)

and bundle update:

Bundler could not find compatible versions for gem "activesupport":
  In Gemfile:
    rspec-rails (= 2.6.1) x86-mingw32 depends on
      activesupport (~> 3.0) x86-mingw32

    rails (= 4.0.0) x86-mingw32 depends on
      activesupport (4.0.0)

Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    rails (= 4.0.0) x86-mingw32 depends on
      railties (= 4.0.0) x86-mingw32

    sass-rails (~> 4.0.0) x86-mingw32 depends on
      railties (4.0.0.rc2)

but that didn't help. I also deleted gemfile.lock and ran the above mentioned commands but still no luck. What I find strange is that it complains of version conflict of gems, but when I look at the gem file I see that all the necessary versions are installed. Could you please point me to what I might be doing wrong as I am completely out of ideas? Thank you.

UPDATE:

This is my gemfile:

source 'https://rubygems.org'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.0'

# Use sqlite3 as the database for Active Record
#gem 'sqlite3'

# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0'

# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'

# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'

# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'

# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 1.2'

group :doc do
  # bundle exec rake doc:rails generates the API under doc/api.
  gem 'sdoc', require: false
end

# Use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# Use unicorn as the app server
# gem 'unicorn'

# Use Capistrano for deployment
# gem 'capistrano', group: :development

# Use debugger
# gem 'debugger', group: [:development, :test]

group :development do
  gem 'sqlite3'
  gem 'rspec-rails', '2.6.1', :require => 'rspec-rails'
  gem 'faker', '0.3.1'
end

group :test do
    gem 'sqlite3'
    gem 'rspec-rails', '2.6.1', :require => 'rspec-rails'
    gem 'webrat', '0.7.1'
    gem 'factory_girl_rails', '1.0'
    gem 'turn', :require => false
end

group :production do
    gem 'pg'
end

3条回答
Viruses.
2楼-- · 2019-04-28 17:36

I solved all these - "System cannot find file path specified" and so with Rails. The solution was to provide correct path to your X:\RailsInstaller\Ruby2.0.0\bin there's a lot of bat files and installing on windows, there's some strange paths to binary, there was like

C:\users\emechnic\railsinstaller\stage...

and I replaced it with my

X:\RailsInstaller\Ruby2.0.0\bin and it works fine!! )

查看更多
看我几分像从前
3楼-- · 2019-04-28 17:46

I had the same problem while trying to create ROR blog just now. The solution is to edit your Gemfile by lines 5 and 9 gem 'rails' and the gem 'sass-rails' line. Delete the parts of both lines that has version 4.0 behind it and save and retype command in the terminal. Hope it helps.

查看更多
We Are One
4楼-- · 2019-04-28 17:47

If bundle says it cannot find compatible gem versions it's probably because it has nowhere to look. You're giving it version numbers, i.e. forcing it to take certain versions for each gem, or versions superior to X, or inferior to X.

Try deleting the version numbers for the culprit gems from your Gemfile and try again:

gem 'rspec-rails'

instead of

gem 'rspec-rails', '2.6.1'
查看更多
登录 后发表回答