Bundler не смог найти совместимые версии для gem "railties" для Rails 4.0.0
Я пытаюсь перейти на Rails 4.0.0, и я изменил версии gem sass-rails
и coffee-rails
. Мне нужно разрешить этот конфликт драгоценных камней между rails
и coffee-rails
, прежде чем я смогу перейти на Rails 4.
Когда я запустил bundle update
, это результат, который я получил:
$ bundle update
Updating git://github.com/pilu/web-app-theme.git
Fetching source index from https://rubygems.org/
Resolving dependencies..............
Bundler could not find compatible versions for gem "railties":
In Gemfile:
rails (= 4.0.0) ruby depends on
railties (= 4.0.0) ruby
coffee-rails (= 4.0.0) ruby depends on
railties (4.0.0.rc2)
Мой Gemfile
:
source 'https://rubygems.org'
gem 'rails', '4.0.0'
gem 'cancan'
gem 'client_side_validations'
gem 'devise', '~> 1.5.3'
gem 'dynamic_form'
gem 'execjs'
gem 'haml'
gem 'httparty'
gem 'jquery-rails'
gem 'mysql2'
gem 'paperclip', '~> 2.4'
gem 'prawn'
gem 'rails3-jquery-autocomplete'
gem 'rake', '0.9.2'
gem 'remotipart', '~> 1.0'
gem 'simple_datatables'
gem 'therubyracer'
gem 'validates_timeliness', '~> 3.0.2'
gem 'will_paginate', '~> 3.0'
gem 'turbolinks'
gem 'jquery-turbolinks'
gem 'noty-rails'
gem 'font-awesome-rails'
gem 'socket.io-rails'
gem 'attr_encrypted'
gem 'bullet', :group => 'development'
#temp for demo.managetherapy.com
#gem 'faker'
group :test do
gem 'capybara'
gem 'cucumber-rails', :require => false
gem 'database_cleaner'
gem 'factory_girl_rails'
# gem 'faker'
gem 'guard-rspec'
gem 'selenium-webdriver', '2.7.0'
gem 'webrat'
end
group :development, :test do
gem 'faker'
gem 'haml-rails'
gem 'hpricot'
gem 'rspec-rails'
gem 'ruby_parser'
#gem 'web-app-theme', '~> 0.8.0'
gem 'web-app-theme', :git =>'git://github.com/pilu/web-app-theme.git'
end
gem 'sass-rails', '4.0.0'
gem 'compass-rails', '1.0.3'
gem 'coffee-rails', '4.0.0'
gem 'uglifier', '>= 2.1.1'
gem 'bootstrap-sass-rails'
# Use unicorn as the web server
#gem 'unicorn'
# Deploy with Capistrano
gem 'capistrano'
gem 'rvm-capistrano'
gem 'passenger'
Ответы
Ответ 1
Кроме того, bundle update
позволяет вам обновлять только один камень за раз, что сложно, если вы обновляете до Rails 4
, и одновременно нужно обновлять множество драгоценных камней.
Я решил это, удалив Gemfile.lock
и выполнив bundle install
.
Это, конечно, предполагает, что у вас нет противоречивой явной версии gem в вашем Gemfile
для начала. Поэтому, если это не удается, удалите номера версий из Gemfile.
Ответ 2
Просто удалите из Gemfile версии с драгоценными камнями (кофе-рельсы и сасси-рельсы) и запустите обновление пакета
Ответ 3
У вас устаревшая версия Devise, используйте Rails 4 совместимый
gem 'devise', '~> 3.0.0.rc'
Также измените coffee-rails
на
gem 'coffee-rails', '~> 4.0.0'
и попробуйте сделать
bundle update coffee-rails
Ответ 4
Сначала запустите gem update rails
, затем bundle update
Ответ 5
У вас есть драгоценные камни, которые не поддерживаются Rails 4. Комментируйте все драгоценные камни, кроме Rails 4, и раскомментируйте их по одному после запуска установки пакета, чтобы найти виновников. Возможно, вам придется отменить некоторые из ваших блокировок версии.
Ответ 6
- Удалить
Gemfile.lock
файл
- здесь для основных изменений gemfile
- run
bundle install
Все будет хорошо работать.:)