2012-05-31 3 views
3

J'ai récemment commencé à travailler sur un projet que j'ai cloné depuis github.Erreur de syntaxe lors de la tentative de démarrage du serveur de rails

Chaque fois que j'essaie démarrer le serveur rails je reçois l'erreur suivante:

 
/Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in load': /Users/thomas/Projects/BillingMiddleware/config/initializers/session_store.rb:3: syntax error, unexpected ':', expecting $end (SyntaxError) 
...sion_store :cookie_store, key: '_BillingMiddleware_session' 
          ^
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:inload' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:236:in load_dependency' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:inload' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/engine.rb:588 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/engine.rb:587:in each' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/engine.rb:587 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:30:ininstance_exec' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:30:in run' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:55:inrun_initializers' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:54:in each' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:54:inrun_initializers' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/application.rb:136:in initialize!' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:insend' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:in method_missing' 
    from /Users/thomas/Projects/BillingMiddleware/config/environment.rb:5 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:inrequire' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in require' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:236:inload_dependency' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in require' 
    from /Users/thomas/Projects/BillingMiddleware/config.ru:4 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:51:ininstance_eval' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:51:in initialize' 
    from /Users/thomas/Projects/BillingMiddleware/config.ru:1:innew' 
    from /Users/thomas/Projects/BillingMiddleware/config.ru:1 

Mon collegue travaille également sur le projet et ne semble pas avoir de problèmes à partir du serveur. Il utilise la même version de ruby, rails et WeBrick que moi.

J'ai essayé de changer la syntaxe de la clé: à: key =>, cela ne devrait pas être le problème car je cours la version 1.9.3 de ruby. Si je fais ce changement de toute façon je reçois un autre message d'erreur:

 
/Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in `load': /Users/thomas/Projects/BillingMiddleware/config/initializers/wrap_parameters.rb:8: syntax error, unexpected ':', expecting kEND (SyntaxError) 
    wrap_parameters format: [:json] 
         ^
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in `load' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:236:in `load_dependency' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:245:in `load' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/engine.rb:588 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/engine.rb:587:in `each' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/engine.rb:587 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:30:in `instance_exec' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:30:in `run' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:55:in `run_initializers' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:54:in `each' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/initializable.rb:54:in `run_initializers' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/application.rb:136:in `initialize!' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:in `send' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.3/lib/rails/railtie/configurable.rb:30:in `method_missing' 
    from /Users/thomas/Projects/BillingMiddleware/config/environment.rb:5 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in `require' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in `require' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:236:in `load_dependency' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.3/lib/active_support/dependencies.rb:251:in `require' 
    from /Users/thomas/Projects/BillingMiddleware/config.ru:4 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval' 
    from /Users/thomas/.rvm/gems/ruby-1.9.3-p194/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize' 
    from /Users/thomas/Projects/BillingMiddleware/config.ru:1:in `new' 
    from /Users/thomas/Projects/BillingMiddleware/config.ru:1 

J'ai fatigué enlever complètement et réinstaller RVM, Ruby et Rails plusieurs fois sans l'emporter. J'ai aussi essayé d'installer bundle qui n'a pas aidé.

Est-ce que quelqu'un a une idée de ce qui ne va pas?

Merci

Répondre

5

Essayez de modifier vos hachages à: key =>: syntaxe de valeur. La même erreur et les mêmes correctifs sont décrits au Rails 3.1 Deployment to Heroku Error. La température fixe sont proposées: config/initializers/session_store.rb

App::Application.config.session_store :cookie_store, :key => '_BillingMiddleware_session' 

config/initializers/wrap_parameters.rb

ActionController::Base.wrap_parameters :format => [:json] 
+0

Cela semble être une solution rapide au problème. Je me demande juste pourquoi il se plaint de cette syntaxe pour les hachages quand je cours Ruby 1.9.3? – MalcolmDurling

+0

Vous utilisez encore ruby ​​1.8.7 en quelque sorte dans votre système. Atleast vous êtes opérationnel. Bonne chance. – Anil

+0

Beaucoup de code déjà engagé dans les projets a la nouvelle syntaxe, cela ne sert à rien de revenir à l'ancienne syntaxe quand elle fonctionne pour les autres membres des projets. Est-ce que c'est autre chose que je peux essayer? Quand je cours ruby ​​-v je reçois ruby ​​1.9.3p194 (2012-04-20 révision 35410) [x86_64-darwin11.3.0] J'utilise RVM et quand je lance rubis liste rvm je n'ai que = * ruby-1.9 .3-p194 [x86_64] J'ai aussi lancé rvm en utilisant ruby-1.9.3-p194 ce qui n'a pas aidé. – MalcolmDurling

1

ressemble à la syntaxe de hachage sur une autre ligne, après avoir corrigé celui-là. Vérifiez config/intializers/wrap_parameters.rb et je me demande si ce projet a obtenu le drapeau pour "ne pas" utiliser la nouvelle syntaxe?

+0

J'ai changé à la fois de ne pas utiliser la nouvelle syntaxe, mais encore une fois semble trouver plus d'exemples dans le projet en utilisant la nouvelle syntaxe et se plaindre à leur sujet. Le projet a été créé par mon collègue lui-même, donc je suis vraiment sûr qu'il n'aura pas de drapeau pour ne pas utiliser la nouvelle syntaxe. Il semble être capable de démarrer le serveur sans problèmes à sa fin. – MalcolmDurling

+0

Que dit votre 'ruby -v'? Avez-vous redémarré l'onglet de votre console, peut-être que quelque chose de bizarre se passe. ET es-tu sur Lion et lui sur Snow Leopard? – pjammer

+0

Quand je lance 'ruby -v' Il retourne ruby ​​1.9.3p194 (2012-04-20 révision 35410) [x86_64-darwin11.3.0]. Chaque fois que j'ai effectué une mise à jour ou installé quelque chose, j'ai redémarré ma console. Oui, nos deux ordinateurs fonctionnent 10.7.3. – MalcolmDurling

Questions connexes