我想从特定文件夹运行所有ruby文件(不使用Rake gem)(我只是为了学习目的而尝试这个)。为了达到这个目的,我做了以下事情:
files = Dir[File.join(Dir.pwd, "tests/*.rb")]
files.each do |file|
ruby file
end
当我在脚本上面运行时,它会抛出一个错误:
run.rb:13:in `block in <main>': undefined method `ruby' for main:Object (NoMethodError)
我在我的机器上安装了红宝石。请建议更改我的代码以便使用它。
答案 0 :(得分:2)
ruby程序中没有ruby
方法
您在终端中使用ruby,因为这是可执行文件的名称,而不是函数的名称。
您可以使用require
来完成您想要实现的目标。
files = Dir[File.join(Dir.pwd, "tests/*.rb")]
files.each do |file|
require file
end