我用来支持我的测试套件的 gem/插件调用了一些导致 Windows shell 翻转并死掉的 GNU 命令。我可以用这种方式绕过重写这些函数:
def get_rake_output(task)
if RUBY_PLATFORM.include? 'mingw'
puts 'Skipped since OS is Windows. Run the test suite on a UNIX-like shell.'
''
else
`./rake --silent #{task}`
end
end
当然,每次调用该函数时都会打印消息。如何最好地确保它只显示一次?
最佳答案
idomatic ruby 处理这个问题的方法是内存它
@@warning_said ||= "warning"
关于ruby-on-rails - 如何在 Ruby/Rails 中进行只发生一次的函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3471084/