执行时会报找不到bar.rb错误。
这是因为运行
1 | /home/oldsong$ ruby /usr/local/ruby/foo.rb |
1、引用一个文件
1 | require File .join( __FILE_ , '../file_to_require' )。 |
2 | require File .expand_path( '../file_to_require' , __FILE__ ) |
3 | require File .dirname( __FILE__ ) + '/file_to_require' |
其中,File.expand_path是Rails常用的做法。
__FILE__为常量,表示当前文件的绝对路径,如/home/oldsong/test.rb
法四:
1 | $LOAD_PATH .unshift( File .dirname( __FILE__ )) |
2、引用一个目录下所有文件
Ruby没有Java中的import java.io.*;
引用时不能用通配符,估计以后的版本有可能加上。
1 | Dir [ File .dirname( __FILE__ ) + '/lib/*.rb' ]. each {|file| require file } |
法二:
一个gem搞定
https://rubygems.org/gems/require_all