web-dev-qa-db-fra.com

(<inconnu>): impossible de trouver le ':' attendu lors du balayage d'une clé simple à la ligne 3 colonne 1 (Psych :: SyntaxError)

J'essaie d'exécuter une installation groupée sur un projet Rails extrait de git. Lorsque j'exécute l'installation du paquet, l'erreur suivante apparaît:

    /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/2.2.0/psych.rb:370:in     `parse': (<unknown>): could not find expected ':' while scanning a simple key at     line 3 column 1 (Psych::SyntaxError)
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/2.2.0/psych.rb:370:in `parse_stream'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/2.2.0/psych.rb:318:in `parse'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/2.2.0/psych.rb:245:in `load'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/site_Ruby/2.2.0/rubygems/config_file.rb:333:in `load_file'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/site_Ruby/2.2.0/rubygems/config_file.rb:198:in `initialize'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/site_Ruby/2.2.0/rubygems/gem_runner.rb:74:in `new'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/site_Ruby/2.2.0/rubygems/gem_runner.rb:74:in `do_configuration'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/lib/Ruby/site_Ruby/2.2.0/rubygems/gem_runner.rb:39:in `run'
    from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.1/bin/gem:21:in `<main>'

Ceci est mon Gemfile:

source 'https://rubygems.org'


# Bundle Edge Rails instead: gem 'Rails', github: 'Rails/rails'
gem 'Rails', '4.2.3'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'

#for Authentification
gem 'devise'

#for image management
gem 'Paperclip', :git => 'git://github.com/thoughtbot/Paperclip.git'
gem 'aws-sdk-v1'
gem 'aws-s3'

group :development do
    gem 'better_errors'
end

group :development, :test do
    gem 'dotenv-Rails'
end
# Use SCSS for stylesheets
gem 'sass-Rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-Rails', '~> 4.1.0'
# See https://github.com/Rails/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :Ruby

# Use jquery as the JavaScript library
gem 'jquery-Rails'
# Turbolinks makes following links in your web application faster. Read more:     https://github.com/Rails/turbolinks
gem 'turbolinks'
# Build JSON APIs with ease. Read more: https://github.com/Rails/jbuilder
gem 'jbuilder', '~> 2.0'
# bundle exec rake doc:Rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc

# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Unicorn as the app server
# gem 'Unicorn'

# Use Capistrano for deployment
# gem 'capistrano-Rails', group: :development

group :development, :test do
  # Call 'byebug' anywhere in the code to stop execution and get a debugger     console
  gem 'byebug'

  # Access an IRB console on exception pages or by using <%= console %> in views
  gem 'web-console', '~> 2.0'

  # Spring speeds up development by keeping your application running in the      background. Read more: https://github.com/Rails/spring
  gem 'spring'
end

Après quelques recherches, j’ai pensé que c’était peut-être un problème avec rvm, alors que j’essayais de retirer un ancien projet de git et que je ne parvenais toujours pas à exécuter l’installation en bundle. J'ai également essayé de copier un projet localement, d'exécuter l'installation et de démarrer un nouveau projet, le tout sans succès. 

Après avoir réinstallé rvm, j’ai exécuté rvm use Ruby --install --default et obtenu l’erreur suivante (semblable à ci-dessus)

/Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/psych.rb:370:in `parse': (<unknown>): could not find expected ':' while scanning a simple key at line 3 column 1 (Psych::SyntaxError)
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/psych.rb:370:in `parse_stream'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/psych.rb:318:in `parse'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/psych.rb:245:in `load'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/rubygems/config_file.rb:333:in `load_file'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/rubygems/config_file.rb:198:in `initialize'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/rubygems/gem_runner.rb:74:in `new'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/rubygems/gem_runner.rb:74:in `do_configuration'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/lib/Ruby/2.2.0/rubygems/gem_runner.rb:39:in `run'
from /Users/jordandeutsch/.rvm/rubies/Ruby-2.2.3/bin/gem:25:in `<main>'

En gros, je ne peux pas commencer un nouveau projet Rails sur l'ordinateur. Toute idée serait appréciée. 

10
Jordan Deutsch

Cette erreur survient généralement si vous avez des erreurs de syntaxe dans les fichiers .yml. Regardez si vous pouvez trouver une erreur là-dedans.

Vous pouvez également essayer de supprimer le fichier .gemrc du répertoire de base. Il se peut que l'erreur soit là.

30
ellen

J'ai eu ce problème récemment eu ce problème. Mon problème: 

.application.yml

default: &default
 FOO_KEY: 'XXXXX'

development:
  <<: *default

test:
  <<: *default

A bien fonctionné. 

default: &default
  FOO_KEY: 'asdf'
  BAR_KEY: 'XXXXXXXXXXX'
  FOO_BAR: 'XXXXXXXXXXXX'

development:
  <<: *default

test:
  <<: *default

N'a pas marché. Ce que j'ai essayé:

  • Réécrire application.yml
  • Supprimez GEMFILE.lock et réinstallez toutes les gemmes
  • changer les valeurs et les noms des clés 
  • vérifier toutes les configs pour les fautes de frappe

Aucun de ceux-ci n'a aidé à résoudre le problème. Donc, comme tout bon ingénieur, je l'ai brûlé au sol. J'ai cloné mon projet dans un nouveau répertoire et réécrit le fichier application.yml, ce qui a fonctionné. Les deux dépôts se trouvent sur la même branche et sur le même ensemble de modifications. 

0
alex_milhouse