Почему я должен интерполировать Dir.pwd при использовании require или autoload в Ruby? - PullRequest
1 голос
/ 20 мая 2011

Мне кажется, что это проблема Ruby 1.9, но каждый раз, когда я пытаюсь потребовать или загрузить источник с чем-то вроде require "lib/mylibrary" Ruby завершается с ошибкой «Нет такого файла для загрузки». Я всегда должен интерполировать Dir.pwd таким образом: require "#{Dir.pwd}/lib/mylibrary"

Я вижу источник везде, где не нужно искать текущую рабочую директорию для включения исходных файлов. Чего мне не хватает?

1 Ответ

5 голосов
/ 20 мая 2011

Переменная $LOAD_PATH определяет места, которые Ruby проверяет для загрузки файлов. Начиная с Ruby 1.9, текущий каталог не находится в пути загрузки по умолчанию, но вы можете использовать метод require_relative для запроса файлов относительно текущего рабочего каталога.

См. этот вопрос для более подробной информации.

...