我在dos CMD的IRB shell中工作
我从mystuff文件加载一个模块 要求'。\ mystuff'
我更改了mystuff文件中的模块,然后再次输入 要求'。\ mystuff'
当我尝试从mystuff模块的最新版本调用函数或变量时,IRB怎么没有获取文件中的更改?
答案 0 :(得分:2)
require
不会两次加载相同的文件。如果要再次加载文件,则需要使用load
。有关详细信息,请参阅What is the difference between include and require in Ruby?。
答案 1 :(得分:-2)
Ruby不使用反斜杠。您需要使用正斜杠,或使用File#join。
您的$LOAD_PATH
(a.k.a $:
)错了。您需要包含当前工作目录:
$: << '.'
in irb,或在可执行文件或源文件中使用Kernel#require_relative。