我从命令行成功使用了 em-dir-watcher ,如其 example.rb 文件中所示,但我发现自己需要从另一个类调用方法,因此我选择使用脚本/运行器路由,调用 rails。
我复制/粘贴了示例代码并将其放在 self.methodName 中并遇到此错误:
myapp/vendor/rails/railties/lib/commands/runner.rb:48: EventMachine:Module (NoMethodError) 的未定义方法“watch”
即使我运行一些完全简单的东西,例如:
def self.watcher
EM.run {
dw = EMDirWatcher.watch '.' do |paths|
paths.each do |path|
puts path
end
end
puts "Monitoring"
}
end
并调用脚本/运行器:
script/runner "require 'rubygems'; require 'em-dir-watcher'; Myclass.watcher"
我仍然得到错误。我究竟做错了什么?