Ruby中的Java CLASSPATH相当于什么?

我想从任何地方运行ruby程序。 我想我已经明白它是RUBYLIB。 但我不能让它发挥作用。 你举个例子吗?

有一个选项-S ,它使用PATH环境变量查找脚本。

例如:

ruby -S some_script 

将在当前操作系统PATH环境变量中查找some_script。

更新 :如果您的脚本需要其他文件,请使用以下语句:

 require File.join(File.dirname(__FILE__), "name_of_required_file") 

代替:

 require "name_of_required_path" 
  • 你需要管理加载路径$LOAD_PATH ($:)
  • 这是通过-I directories完成的(目录由类似Unix的系统上的:和DOS / Windows系统上的;分开。)
  • 您可以将-I开关添加到RUBYOPT$SAFE必须为0)
  • 或者使用包含搜索路径的RUBYLIB$SAFE必须为0)。
  • RUBYPATH还改变了Ruby程序的搜索路径。
  • 对于环境变量,请确保它们已正确设置或导出,以便Ruby VM可以看到它们。 您可以在ruby.bat或ruby.sh中添加调试打印。
  • 检查您的$SAFE设置。 如果你不知道它,那么它可能很好。

我总是将RUBYLIBRUBYPATH设置为我的加载路径,并在解释器调用中添加-S选项。