Ошибка при запуске Metrical

У меня есть среда разработки Ruby 1.9.2 и Rails 3.0.9. Когда я запускаю gem "metrical" в своем приложении, я получаю следующие ошибки:

** Running the specs/tests in the [test] environment
Analyzing:     100% |oooooooooooooooooooooooooooooooooooooooooo| Time: 00:00:00
/Users/tester/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/psych/visitors/emitter.rb:17:in `end_document': undefined method `write' for #<Syck::Emitter:0x000001028d2388> (NoMethodError)

Кто-нибудь еще видел эту проблему? У меня нет идей для ошибки.

2 ответа

Я столкнулся с той же проблемой, похоже, связана с разбором YAML с Ruby 1.9.2

Я взломал метрическую фу и вставил явное требование движка Psych YAML:

metric_fu-2.1.1 / Библиотека /metric_fu.rb:

require 'rake'
require 'psych'  # <-- added here
require 'yaml'

И сейчас работает...

Самое простое решение - установить переменную среды RUBYOPT при запуске метрики, поэтому вместо метрики вы вводите:

RUBYOPT='-rpsych' metrical

Я делаю это, и все работает нормально. Этот пост в блоге понял это для меня: http://excid3.com/blog/undefined-method-write-for-syckemitter/ (возможно, немного проще, чем взломать metric_fu, пока они не исправят это).

Другие вопросы по тегам