Ruby中的Java CLASSPATH相当于什么?

时间:2009-09-25 07:50:58

标签: ruby

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

2 个答案:

答案 0 :(得分:5)

  • 您需要使用加载路径$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选项添加到解释器调用中。

答案 1 :(得分:1)

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

例如:

ruby -S some_script

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

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

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

而不是:

require "name_of_required_path"