很奇怪,我第一次遇到这样的问题: 从它的外观来看,我有冲突,因为测量师和activeadmin试图使用相同宝石的不同版本,你如何处理这些问题呢?
Bundler could not find compatible versions for gem "formtastic":
In Gemfile:
formtastic (~> 2.1.0) ruby
activeadmin (>= 0) ruby depends on
formtastic (2.3.0)
我更加注重: 在SO上找到了这个链接: Unable to use surveyor gem
我认为只需更改gemfile.lock中的版本就可以解决这个问题,但事实并非如此,我现在得到的错误是: Bundler找不到gem" actionpack"的兼容版本: 在Gemfile中: activeadmin(> = 0)ruby取决于 formtastic(〜> 2.1.0)ruby取决于 actionpack(〜> 3.0)ruby
rails (= 4.1.0) ruby depends on
actionpack (4.1.0)
更改后的gemfile.lock看起来像: 眼镜: activeadmin(1.0.0.pre) arbre(〜> 1.0,> = 1.0.2) 波旁酒 咖啡轨 formtastic(〜> 2.1.0) 进行此更改后我必须运行的命令是:
Resolving dependencies...
You have requested:
formtastic ~> 2.1.0
The bundle currently has formtastic locked at 2.3.1.
Try running `bundle update formtastic`
答案 0 :(得分:1)
此错误表示您尝试一起使用的版本Surveyor和activeadmin无法一起使用 - 它们具有不兼容的库要求。 (Surveyor需要[2.1.0, 2.2.0)
范围内的formtastic; activeadmin仅适用于[2.3.0, 2.3.0]
。)
修改Gemfile.lock(不推荐)无法解决这个问题,因为依赖版本是由各个库的gemspecs定义的。当加载每个库时,rubygems将使用其指定的版本约束加载其依赖项(这是您使用&#34看到的;您已请求..."错误)。
要尝试的事情:
查找彼此兼容的不同版本的surveyor和activeadmin。如果您在Gemfile中放松了一个或另一个的版本约束,Bundler将尝试执行此操作。但有可能没有这样的版本可以与您应用中的其他宝石兼容(包括Rails)。
fork测量员或activeadmin并更改formtastic依赖版本。这可能会破坏事情 - 他们可能因某种原因而有特定的版本要求 - 但值得尝试。
答案 1 :(得分:0)
试试这个..(测量员和主动管理兼容版)