2017-09-26 6 views
0

J'ai amélioré Ruby de 2.3 à 2.4. Quand je lance ensemble, je reçoisComment obtenir Rails 5.0.6 sous Windows avec Ruby 2.4 et Nokogiri 1.8.1?

C:\Users\Chloe\workspace>bundle 
Fetching gem metadata from https://rubygems.org/......... 
Gem::InstallError: nokogiri requires Ruby version < 2.4, >= 2.1.0. 
An error occurred while installing nokogiri (1.7.0.1), and Bundler cannot 
continue. 
Make sure that `gem install nokogiri -v '1.7.0.1'` succeeds before bundling. 

In Gemfile: 
    nested_form_fields was resolved to 0.8.2, which depends on 
    rails was resolved to 5.0.2, which depends on 
     actioncable was resolved to 5.0.2, which depends on 
     actionpack was resolved to 5.0.2, which depends on 
      actionview was resolved to 5.0.2, which depends on 
      rails-dom-testing was resolved to 2.0.2, which depends on 
       nokogiri 

Cependant, j'ai pu installer Rails manuellement à l'aide gem install rails --version 5.0.6. Il a installé Nokogiri 1.8.1. (J'ai aussi installé, puis retiré Rails 5.0.2.)

C:\Users\Chloe\workspace>gem list nokogiri 

*** LOCAL GEMS *** 

nokogiri (1.8.1 x64-mingw32) 

Cependant, bundle et rails -v ne fonctionne toujours pas.

C:\Users\Chloe\workspace>rails -v 
Could not find nokogiri-1.7.0.1-x64-mingw32 in any of the sources 
Run `bundle install` to install missing gems. 
Gemfile
gem 'rails', '~> 5.0.2' 
ruby '~> 2.4.0' 
... 
+0

L'erreur est 'Gem :: InstallError: nokogiri nécessite Version Ruby < 2.4, > = 2.1.0'. Essayez de débloquer la version de 'nested_form_fields' et voyez si cela fait que nokogiri résoudra une version qui supporte ruby ​​2.4 – nicooga

+0

Hmm, ce n'est pas mon projet. Voici son ['Gemfile'] (https://github.com/ncri/nested_form_fields/blob/master/Gemfile) et [' nested_form_fields.gemspec'] (https://github.com/ncri/nested_form_fields/blob/ master/nested_form_fields.gemspec). Il spécifie en fait 'nokogiri', '1.6.8.1'. – Chloe

Répondre

0

Je ne sais pas comment le prouver puisque l'équipe nokogiri ne libère pas une gemspec, mais cette version ne supporte pas nokogiri Ruby 2.4 sur Windows.

Regardez: https://github.com/sparklemotion/nokogiri/blob/v1.7.1/.cross_rubies. Cela n'inclut pas ruby ​​2.4.x.

Si vous devez absolument passer à rubis 2.4 essayer la version de verrouillage nokogiri sur 1.8.1, qui semble soutenir Ruby 2.4 sur les fenêtres comme par https://github.com/sparklemotion/nokogiri/blob/v1.8.1/.cross_rubies

gem 'nokogiri', '1.8.1' 
+0

Comment modifier la dépendance 'nested_form_fields'? Pourquoi pensez-vous que cela dépend de 1.7.0.1? – Chloe

+0

Désolé, ma supposition était incorrecte car nested_form_fields spécifie nokogiri comme une dépendance de développement, pas une dépendance d'exécution. Pourtant, je pense que nokogiri 1.7.1 ne supporte pas ruby ​​2.4 sur Windows, donc vous devrez forcer l'utilisation de nokogiri 1.8.1 qui le fait. Mise à jour de la réponse – nicooga