Я обновляю свое приложение Rails для работы с Ruby 1.9 и продолжаю сталкиваться с такими ошибками:
Anonymous modules have no name to be referenced by
/home/foo/.gem/ruby/1.9.1/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:585:in `to_constant_name'
/home/foo/.gem/ruby/1.9.1/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:391:in `qualified_name_for'
/home/foo/.gem/ruby/1.9.1/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:104:in `rescue in const_missing'
/home/foo/.gem/ruby/1.9.1/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:94:in `const_missing'
/home/foo/app/config/environment.rb:66:in `block in '
etc.
Google находит для этого все виды обращений, но каждое из них относится к определенному исправлению для одного конкретного драгоценного камня или приложения. Ни один из них не объясняет, что на самом деле означает сообщение.
Строка 66 файла environment.rb - это конфигурация для super_exception_notifier (старая версия, 2.0.8):
ExceptionNotifier.configure_exception_notifier do |config|
config[:sender_address] = %("Foo" )
config[:exception_recipients] = %w(foo@foo.com)
config[:skip_local_notification] = false
end
Насколько я могу судить, ExceptionNotifier не определен, и ActiveSupport пытается его волшебным образом загрузить, но не удается, а затем снова не удается распечатать красивое сообщение об ошибке.