2015-01-13 29 views
0

我正在构建这个目前私有的宝石,但稍后将会开放源代码。我有spec.add_dependency 'hashie', '~> 3.3.2'Bundler无法找到兼容版本的宝石

当我的应用程序使用的宝石,我得到:

Bundler could not find compatible versions for gem "hashie": 
    In Gemfile: 
    desk (~> 1.0.4) ruby depends on 
     hashie (~> 2.1) ruby 

    my_gem (>= 0) ruby depends on 
     hashie (3.3.2) 

我怎么去解决这样的问题?

一种方法是取消锁~> 3.3.2哪些工作,但我不喜欢这样做。

我试过从应用程序中删除Gemfile.lock并运行bundle install/update,但那也不起作用。

回答

0

欢迎来到依赖地狱:)。无法使用同一个gem的两个不同版本。

你可以尝试叉桌子,并更新到hashie ~> 3.3.2那里或只需与hashie ~> 2.1并将您的hashie降级到2.x版本。

1

我接受了@ascar答案,因为这是正确的做法。人们建议你应该用宝石来确保兼容性。

现在我在OSS的精神上做了些什么:)我实际上已经在桌面宝石上提交了一个PR来更新hashie gem。

相关问题