什么是$:<<"." 做Ruby的需求路径?

use*_*948 9 ruby require

我不理解$:<< "."Ruby中的含义.

我将Ruby升级到1.9.1,但程序无效.我的同学告诉我,我应该补充一下$:<< "."

怎么$:<< "."办?

Pau*_*l.s 23

  1. $: 是包含构成Ruby的加载路径的路径数组的变量
  2. << 将一个项追加到数组的末尾
  3. . 指的是当前目录

    1   2  3
    |   |  |
    V   V  V
    $: << "."
    
    Run Code Online (Sandbox Code Playgroud)

所以你要将当前目录添加到Ruby的加载路径中

参考文献:

  1. 可以在发现Execution Environment Variables这个页面的部分,从语用程序员指南

    一个字符串数组,其中每个字符串指定要搜索Ruby脚本的目录以及load和require方法使用的二进制扩展.初始值是通过-I命令行选项传递的参数的值,后跟安装定义的标准库位置,后跟当前目录(".")[显然此链接适用于旧版本的Ruby因为这还在那里].可以在程序内设置此变量以更改默认搜索路径; 通常,程序使用$:<< dir将dir附加到路径.

  2. 可以在ruby-doc.org上的数组文档中找到.

    追加 - 将给定对象推送到此数组的末尾.此表达式返回数组本身,因此可以将多个附加链接在一起.