Ruby: требуется импортировать ошибки - необходимо установить корневой каталог - PullRequest
0 голосов
/ 23 октября 2018

Простите за неопытность с Ruby, но я не могу запустить скрипт в стороннем проекте со следующей структурой:

˅ alpha
  ˅ lib
     ˅ bravo
        golf.rb
     ˅ charlie
        ˃ delta
           ˅ echo
              foxtrot.rb
              require "charlie/delta/echo/__init"
              __init.rb
              require "bravo/golf"

Какой должна быть моя командная строка для запуска скрипта ' foxtrot.rb ', поскольку следующее генерирует ошибку:

ruby "c:\arby\lib\bravo\charlie\delta\echo\foxtrot.rb"

"'require': cannot load such file -- charlie/delta/echo/__init (LoadError)"

1 Ответ

0 голосов
/ 23 октября 2018

Если это код внутри __init.rb, он не будет работать.

require "charlie/delta/echo/__init"
__init.rb
require "bravo/golf"

require говорит ruby ​​загрузить код внутри файла ruby.Чтобы это работало, файлы должны быть правильно организованы.Вы также можете использовать require_relative, но им все равно нужен относительный путь из вызывающего их файла.См. В чем разница между require_relative и require в Ruby?

...