2011-12-26 7 views
8

He estado ejecutando Guard para RSPEC y utilizando la gema growl_notify por un tiempo (2-3 meses), pero ahora no puedo hacer que guard se ejecute en ninguno de mis proyectos de Rails 3.1.1. Hice algunas investigaciones sobre el error en sí, pero no pude encontrar nada concluyente (excepto que el someone else tiene el mismo problema).Rails 3.1.1 Guard-rspec no puede ejecutarse debido a errores de Growl: OSERROR: -10000 MENSAJE: controlador de eventos de Apple falló

Gemfile:

source 'http://rubygems.org' 

gem 'rails', '3.1.1' 

# Bundle edge Rails instead: 
# gem 'rails',  :git => 'git://github.com/rails/rails.git' 

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.1.4' 
    gem 'coffee-rails', '~> 3.1.1' 
    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 
gem 'spreadsheet' # Allows for reading/writing Excel files. We also need a CSV importer, but that can come later 
gem 'gmaps4rails' # Allows for Google Maps Pushpins/Markers/Places 
gem 'scoped_search' # For Searching 
gem "paperclip", :git => "git://github.com/thoughtbot/paperclip.git" # For File Uploads 

group :test, :development do 
    gem 'sqlite3' 
    gem 'turn', '<0.8.3' 
    gem 'rspec-rails' 
    gem 'capybara' 
    gem 'guard-rspec' 
    gem 'growl_notify' 
    gem 'launchy' 
    gem 'capistrano' #You don't want Capistrano on the production side (I think) 
end 

group :production do 
    gem 'pg' #use postgres for database installation as the database 
end 

error:

[email protected]:~/development/rails/tasks$ guard 
/Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/rb-appscript-0.6.1/lib/appscript.rb:542:in `_send_command': CommandError (Appscript::CommandError) 
     OSERROR: -10000 
     MESSAGE: Apple event handler failed. 
     COMMAND: app("/Library/PreferencePanes/Growl.prefPane/Contents/Resources/GrowlHelperApp.app").register({:all_notifications=>["success", "pending", "failed", "notify"], :as_application=>"Guard", :default_notifications=>"notify"}) 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/rb-appscript-0.6.1/lib/appscript.rb:642:in `method_missing' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/growl_notify-0.0.3/lib/growl_notify.rb:29:in `register' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/growl_notify-0.0.3/lib/growl_notify.rb:19:in `config' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard/notifiers/growl_notify.rb:42:in `available?' 
from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard- 0.9.4/lib/guard/notifier.rb:117:in `add_notification' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard/notifier.rb:154:in `block in auto_detect_notification' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard/notifier.rb:154:in `each' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard/notifier.rb:154:in `any?' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard/notifier.rb:154:in `auto_detect_notification' 
from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard- 0.9.4/lib/guard/notifier.rb:80:in `turn_on' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard.rb:184:in `start' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/lib/guard/cli.rb:74:in `start' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/thor-0.14.6/lib/thor/task.rb:22:in `run' 
from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/thor- 0.14.6/lib/thor/invocation.rb:118:in `invoke_task' 
from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/thor- 0.14.6/lib/thor.rb:263:in `dispatch' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/thor-0.14.6/lib/thor/base.rb:389:in `start' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/gems/guard-0.9.4/bin/guard:6:in `<top (required)>' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/bin/guard:19:in `load' 
    from /Users/Thomas/.rvm/gems/ruby-1.9.2-p290/bin/guard:19:in `<main>' 
+0

Acabo de encontrarme con el mismo problema – keruilin

Respuesta

5

Ésta parece ser una falta de correspondencia entre la versión de Growl y growl_notify. growl_notify 0.0.3 cambió el nombre de la aplicación Growl, que lo que puedo decirle cambiado con Growl 1.3 (León solamente)

creo que funciona a:

  • uso growl_notify 0.0.2 para Growl 1.3 <
  • uso growl_notify 0.0.3 para Growl> = 1.3
  • joya gruñido uso (lo que hice)
+0

No olvides desinstalar otras gemas (por ejemplo, eliminar growl_notify si estás utilizando grow gem). – Lenart

7

Esto es lo que funcionó para mí. Dos cosas:

Primero, Guardia 0.10.x. requiere Growl> = 1.3. Instale Growl 1.3 desde App Store (las revisiones son realmente malas, pero no tuve problemas).

En segundo lugar, las nuevas versiones de la Guardia recomiendan ruby_gntp. Simplemente reemplace gem 'growl_notify' con gem 'ruby_gntp'.

+0

Ve la gema 'ruby_gntp' si estás en el leopardo de las nieves –

Cuestiones relacionadas