Ответ 1
$:
- путь загрузки Ruby, поэтому он фактически добавляет вложенную папку /lib
папки, в которой __FILE__
находится в этом массиве, так что другие файлы из этого драгоценного камня могут быть require
d.
Я нашел это в файле Gemspec графопостроитель. Что делает следующая строка?
$:.push File.expand_path("../lib", __FILE__)
require "surveyor/version"
Почему делает $:.push
вещь? Для меня это выглядит как просто requires
файл ../lib/surveyor/version
. если да, не могу ли я просто заменить это следующей строкой?
require File.expand_path('../lib/surveyor/version', __FILE__)
Разве обе эти вещи? Если нет, то какая разница?
$:
- путь загрузки Ruby, поэтому он фактически добавляет вложенную папку /lib
папки, в которой __FILE__
находится в этом массиве, так что другие файлы из этого драгоценного камня могут быть require
d.