2017-04-21 38 views
0

我试图引入nokogiri升级到1.7版本:如何解决打捆 “找不到版本” 升级引入nokogiri

gem 'nokogiri', '~> 1.7' 

但是当我运行:

bundle update --source nokogiri 

我得到:

Fetching gem metadata from https://rubygems.org/........... 
Fetching version metadata from https://rubygems.org/... 
Fetching dependency metadata from https://rubygems.org/.. 
Resolving dependencies............. 
Bundler could not find compatible versions for gem "nokogiri": 

这是我的Gemfile:

nokogiri (~> 1.7) 

    activemerchant (~> 1.58.0) was resolved to 1.58.0, which depends on 
     nokogiri (~> 1.4) 

    activemerchant (~> 1.58.0) was resolved to 1.58.0, which depends on 
     nokogiri (~> 1.4) 

    capybara was resolved to 2.7.0, which depends on 
     nokogiri (>= 1.3.3) 

    cucumber-rails was resolved to 1.4.3, which depends on 
     nokogiri (~> 1.5) 

    haml-rails was resolved to 0.9.0, which depends on 
     html2haml (>= 1.0.1) was resolved to 2.0.0, which depends on 
     nokogiri (~> 1.6.0) 

    haml-rails was resolved to 0.9.0, which depends on 
     html2haml (>= 1.0.1) was resolved to 2.0.0, which depends on 
     nokogiri (~> 1.6.0) 

    rails (>= 4.2.6, ~> 4.2) was resolved to 4.2.6, which depends on 
     actionmailer (= 4.2.6) was resolved to 4.2.6, which depends on 
     actionview (= 4.2.6) was resolved to 4.2.6, which depends on 
      rails-html-sanitizer (>= 1.0.2, ~> 1.0) was resolved to 1.0.3, which depends on 
      loofah (~> 2.0) was resolved to 2.0.3, which depends on 
       nokogiri (>= 1.5.9) 

    roo (~> 2.4.0) was resolved to 2.4.0, which depends on 
     nokogiri (~> 1) 

    roo-xls was resolved to 1.0.0, which depends on 
     nokogiri 

    capybara was resolved to 2.7.0, which depends on 
     xpath (~> 2.0) was resolved to 2.0.0, which depends on 
     nokogiri (~> 1.3) 

有没有人有一个想法,为什么它找不到它?我在rubygems.org上看到,当前版本是1.7.1以及github。我需要指定github源代码吗?

+0

您的大写锁定键不能一致地运行。 –

回答

1

的问题是在这里:

haml-rails was resolved to 0.9.0, which depends on 
    html2haml (>= 1.0.1) was resolved to 2.0.0, which depends on 
    nokogiri (~> 1.6.0) 

正如你所看到的,html2haml取决于nokogiri (~> 1.6.0),即1.7。您需要更新html2haml(因此它的依赖关系变为nokogiri (~> 1.6))或使用nokogiri, ~> 1.6

您可以尝试删除Gemfile.lock文件并再次运行bundle install,但如果您尚未投入生产,我只会建议您这样做。

1

我觉得其他的宝石都依赖于Nokogiri,所以 尝试bundle update

bundle update将解析依赖关系树并尝试安装满足所有其他gem依赖关系的版本。