我如何设计一个ruby应用程序,使我每次保存一个.rb文件时,它都会自动以“新的方式”运行?
我的意思是,我正在编写一个REPL (Read-Eval-Print-Loop)应用程序,我希望它能够像每次更改源文件时总是重新加载它们一样工作。
这有点像Rails或Unity(游戏引擎)在你更改和保存脚本文件时所做的事情。
我用Kernel.load做过测试,但它抱怨重新定义的常量和产生重复的线程。
有没有人做过这样的事情?我如何才能实现这个目标?
发布于 2014-01-17 22:31:19
Kernel.load应该可以解决这个问题。可以通过确定常量是否已定义来避免重新定义常量
CONST = 2 unless defined?(CONST) 如果需要重新定义常量,则可以使用全局变量,如$const
这两个选项都将避免警告,当重新加载files_you时,可能需要检查它们是否已经更改,也许可以通过定义自己的重新加载方法。
https://stackoverflow.com/questions/21185367
复制相似问题