2017-04-21 1 views
0

Je suis en train de mettre à niveau Nokogiri à la version 1.7:Comment fixer Bundler "ne peut pas trouver la version" mise à niveau Nokogiri

gem 'nokogiri', '~> 1.7' 

mais quand je lance:

bundle update --source nokogiri 

Je reçois:

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": 

C'est dans mon 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) 

Est-ce que quelqu'un a une idée pourquoi il ne peut pas le trouver? Je vois sur rubygems.org que la version actuelle est 1.7.1 ainsi que sur github. Dois-je spécifier la source github?

+0

La touche majuscule ne fonctionne pas de manière cohérente. –

Répondre

1

Le problème est ici:

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) 

Comme vous pouvez le voir, html2haml dépend de nokogiri (~> 1.6.0), qui est pas1.7. Vous devez soit mettre à jour html2haml (de sorte que la dépendance devienne nokogiri (~> 1.6)) ou utiliser nokogiri, ~> 1.6.

Vous pouvez essayer de supprimer votre fichier Gemfile.lock et exécuter à nouveau bundle install, mais je ne le recommanderai que si vous n'êtes pas encore en production.

1

Je pense que d'autres gemmes sont depedent sur Nokogiri, donc essayez bundle update.

bundle update résoudra une arborescence de dépendances et essaiera d'installer des versions qui satisfont toutes les autres dépendances gemmes.