Java程序员需要理解什么是CLASS_PATH,CLASS_LOADER这些概念,Ruby 程序员也一样。
每次打开一个rib或者rails console,引用一个外部plugin或者库的时候,输入代码
ruby 代码
- require ’class_name'
然后引用的外部文件就可以为我所用,这背后到底发生了什么?
ruby 解释器开始并不知道到哪里去找外部引用的文件,所以每次作require 的时候,ruby 解释器会自动把引用的文件添加到一个全局变量中,可以通过全局变量$"来查看当前ruby class path到底都有哪些文件
ruby 代码
- puts $"
查看类加载路径的办法:
ruby 代码
- puts $:
或者:
ruby 代码
- puts $LOAD_PATH
得到当前ruby 解释器能找到的所有路径和文件。
其实require 除了可以加载外部的.rb文件外,还可以加载.so,.o,.dll等库文件,并作为ruby 扩展文件使用。