给出一个gemfile:
source 'https://rubygems.org'
gem 'rails', '4.1.1'
group :development, :test do
gem 'railroady'
gem 'sqlite3'
gem 'jasmine'
# For linux support
gem 'therubyracer'
end
group :production do
gem 'pg'
gem 'thin'
end
gem 'sass-rails'
# gem 'coffee-rails'
gem 'uglifier', '>= 1.0.3'
gem 'colorize'
gem 'jquery-ui-rails'
gem 'jquery-rails'
gem 'rails-backbone'
# gem 'backbone-on-rails'
gem 'bootstrap-sass'
gem 'requirejs-rails', git: 'git://github.com/jwhitley/requirejs-rails.git'
gem 'ejs'
gem 'devise'
gem 'better_errors', '>= 0.2.0', :group => :development
gem 'binding_of_caller', '>= 0.6.8', :group => :development
gem 'd3_rails'
gem 'font-awesome-sass-rails'
# for a better way of looking at the rake routes by calling rake color_routes in the console
gem 'color_routes'
# lets us know which user is logged in, and store in a global variable gon{}
gem 'gon'
#browser detection
gem 'browser'
# FOR EASY TRANISTION TO Rails 4
gem 'protected_attributes'
gem 'rails-observers'
gem 'actionpack-page_caching'
gem 'actionpack-action_caching'
并且在运行bundle
时,收到以下错误:
Bundler could not find compatible versions for gem "jquery-rails":
In Gemfile:
rails-backbone (>= 0) ruby depends on
jquery-rails (~> 2.1.3) ruby
jquery-rails (3.1.2)
Bundler could not find compatible versions for gem "ejs":
In Gemfile:
rails-backbone (>= 0) ruby depends on
ejs (~> 1.0.0) ruby
ejs (1.1.1)
Bundler could not find compatible versions for gem "rails":
In Gemfile:
rails-backbone (>= 0) ruby depends on
rails (~> 3.1.0.beta1) ruby
rails (4.1.1)
错误没有意义。用jquery-rails取第一部分,我得知它是一个大于或等于0的版本的另一个gem rails-backbone
取决于2.1.3左右的jquery-rails
。
ruby
版本后的含义是什么?
什么是`jquery-rails(3.1.2)是什么意思?
答案 0 :(得分:1)
基本上,你的gemfile中存在依赖性错误,似乎rails-backbone导致了大部分错误,考虑删除它,因为最新版本适用于rails 3.1 - 它已经很长时间没有更新
以下是有关gem的信息:https://rubygems.org/gems/rails-backbone
Bundler could not find compatible versions for gem "ejs":
In Gemfile:
rails-backbone (>= 0) ruby depends on
ejs (~> 1.0.0) ruby
ejs (1.1.1)
此错误字面意思是您使用的是ejs版本1.1.1(可能是某些其他gem的依赖项),但rails-backbone(版本大于或等于0,因此任何版本)需要ejs在版本1.0。*
你可以使用git中的rails-backbone
gem 'rails-backbone', git: 'https://github.com/codebrew/backbone-rails.git', tag: 'v1.1.2'
版本1.1.2取决于任何版本的jquery-rails和mocha,因此它不应该导致任何问题。使用没有标签的git将从master获得最新版本,但我建议不要使用开发版本(可能会造成更多麻烦而不是好处)
答案 1 :(得分:0)
rubygem似乎过时了,github存储库声明它适用于rails 4
作为一种解决方法,直接从github获取gem:
gem 'rails-backbone', :git => 'https://github.com/codebrew/backbone-rails.git'
答案 2 :(得分:0)
jquery-rails (~> 2.1.3)
表示它取决于jquery-rails
和2.1.3
之间的所有2.2.0
版本。
jquery-rails (3.1.2)
已安装在应用中;可以通过查看Gemfile.lock内容来验证它。
尝试bundle update
;它会尝试更新没有指定特定版本的所有gem版本,并且可能成功解决依赖冲突。