/ / Pourquoi ai-je le message “warning: constante JSON :: VERSION déjà initialisée” lors de l’exécution du concombre rake? - rubis sur rails, rubis, concombre, rubis sur rails-5

Pourquoi est-ce que je reçois un «avertissement: constante JSON :: VERSION déjà initialisée» lors de l'exécution du concombre rake? - rubis sur rails, rubis, concombre, rubis sur rails-5

Je viens de mettre en place une machine Linux Mint pour le développement de rails avec rvm. bijou concombre-rails et ensuite essayé de courir:

rake cucumber

Pour une raison quelconque, j'ai été rencontré:

/usr/bin/ruby2.3 -S bundle exec cucumber --profile default
/usr/lib/ruby/vendor_ruby/json/version.rb:3: warning: already initialized constant JSON::VERSION
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/version.rb:3: warning: previous definition of VERSION was here
/usr/lib/ruby/vendor_ruby/json/version.rb:4: warning: already initialized constant JSON::VERSION_ARRAY
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/version.rb:4: warning: previous definition of VERSION_ARRAY was here
/usr/lib/ruby/vendor_ruby/json/version.rb:5: warning: already initialized constant JSON::VERSION_MAJOR
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/version.rb:5: warning: previous definition of VERSION_MAJOR was here
/usr/lib/ruby/vendor_ruby/json/version.rb:6: warning: already initialized constant JSON::VERSION_MINOR
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/version.rb:6: warning: previous definition of VERSION_MINOR was here
/usr/lib/ruby/vendor_ruby/json/version.rb:7: warning: already initialized constant JSON::VERSION_BUILD
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/version.rb:7: warning: previous definition of VERSION_BUILD was here
/usr/lib/ruby/vendor_ruby/json/common.rb:99: warning: already initialized constant JSON::NaN
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/common.rb:99: warning: previous definition of NaN was here
/usr/lib/ruby/vendor_ruby/json/common.rb:101: warning: already initialized constant JSON::Infinity
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/common.rb:101: warning: previous definition of Infinity was here
/usr/lib/ruby/vendor_ruby/json/common.rb:103: warning: already initialized constant JSON::MinusInfinity
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/common.rb:103: warning: previous definition of MinusInfinity was here
/usr/lib/ruby/vendor_ruby/json/common.rb:128: warning: already initialized constant JSON::UnparserError
/var/lib/gems/2.3.0/gems/json-1.8.5/lib/json/common.rb:128: warning: previous definition of UnparserError was here

À ma connaissance, il s’agit d’une installation assez simple de la vanille. Je ne peux donc pas comprendre ce que j’ai fait pour obtenir ces avertissements. Dois-je avoir des gemmes en conflit? Si oui, comment puis-je résoudre ce problème?

Réponses:

18 pour la réponse № 1

J'ai réussi à supprimer les avertissements JSON en:

bundle clean --force
bundle

3 pour la réponse № 2

Le joyau json fourni avec votre version de Ruby est un peu obsolète. Si vous souhaitez vous débarrasser de ces avertissements, vous devez en inclure une version plus récente dans votre Gemfile:

gem "json", ">= 2.0.0"

Puis courir bundle install.