3
我看了Dir.exists?
方法了在documentation,我相信我正确地使用它,但在每次调用我打这个错误:Ruby Dir.exists?未定义的方法
未定义的方法'存在” for Dir:Class(NoMethodError)
我可以忽略一些令人难以置信的明显的东西吗?以下是相关的代码。
#!/usr/bin/ruby
ARGV.each do |dir| # Arguements are directory names.
if !Dir.exists?(dir)
#dosomething
end
end
编辑:
使用的File.directory?
代替Dir.exists?
修复我的计划,但并没有解释这个错误。
刚刚检查,我在1.8.7。看起来这是问题!谢谢! – AnthonyW 2013-05-06 22:13:56
即使使用RVM,我也有同样的问题o安装最新的ruby'$ ruby -v'给出'ruby 2.1.2p95(2014-05-08修订版45877)[x86_64-linux]'。我在一台Ubuntu 12.04 LTS机器上运行。任何想法可能会导致这个问题? – 2014-06-25 14:15:57
@FMKerckhof:在您调用'Dir.exists?'的脚本中,添加一行像'puts“Ruby版本:#{RUBY_VERSION}”',以确保它与使用RVM安装的Ruby版本一起运行。 – 2014-06-25 14:39:06