循环依赖于Gemfile

时间:2015-06-23 18:09:50

标签: ruby-on-rails ruby gem rubygems countries

运行 bundle install 时出现此错误:

  

您的Gemfile需要彼此依赖的宝石,从而创建无限循环。请删除gem'casein'并重试。

当我将gem 国家/地区添加到Gemfile时,错误就开始了。

我认为这是一个奇怪的错误,因为国家和酪蛋白的依赖关系非常不同:

try-catch

编辑:

为了确保,我从我的Gemfile中删除了所有其他宝石:

    FileInputStream fin = null;
    try {
        fin = new FileInputStream(pdfDoc);
        byte fileContent[] = new byte[(int) pdfDoc.length()];
        fin.read(fileContent);
    } catch (IOException | FileNotFoundException e) {
        System.out.println("");
        e.printStackTrace();
    }

但错误仍然存​​在

1 个答案:

答案 0 :(得分:2)

哦,对不起,我乍看之下没有得到这个。

casein gem引用本身:

Puelos-Macbook:ChataBackend paulo$ gem dependency casein
Gem casein-5.0.0.0
  authlogic (= 3.4.2)
  !! NB⇒ casein (>= 0)
  jquery-rails (>= 0)
  scrypt (= 1.2.1)
  will_paginate (= 3.0.5)

允许1.9之前的捆绑,但现在不允许。您有两种选择:

  1. bundler降级为1.8并重新运行bundle install
  2. 通过删除自引用来克隆casein gem,修补程序casein.gemspec并提交拉取请求。 https://github.com/spoiledmilk/casein3/blob/master/casein.gemspec#L103
  3. NB 实际上这已经由社区完成,例如https://github.com/russellquinn/casein 因此,您可能只需通过gem 'casein', git: 'github.com:russellquinn/casein'明确要求该版本。

    希望它有所帮助。