Я пытался получить файл ruby, чтобы потребовать другой файл ruby, и мне кажется, что я схожу с ума. Моя установка выглядит следующим образом
Два файла в '/ raid1 / ruby-code / benchmark /'
CommandRunner Benchmarker
Benchmarker является основной программой на данный момент и требует CommandRunner, я пробовал кучу разных вещей, но ни один из них работают. Ниже приводится список всего, что я положил в начало Benchmarker
require 'CommandRunner'
require './CommandRunner'
$LOAD_PATH.unshift File.expand_path(File.dirname($PROGRAM_NAME)) require 'CommandRunner'
$LOAD_PATH.unshift File.expand_path(File.dirname($PROGRAM_NAME)) require './CommandRunner'
. Я также пробовал все перечисленные выше перестановки, используя require_relative. Я пробовал загружать файл в irb внутри emacs, и я пробовал это в командной строке. В какой-то момент в irb он загружался один раз с
require 'CommandRunner', а затем загружался, пока я не переключил его обратно на './CommandRunner', а затем он загрузился еще раз.
У меня действительно была ошибка:
`require_relative': no such file to load -- /raid1/ruby-code/benchmark/CommandRunner (LoadError)
- правильный путь к файлу!
С тех пор я переключил его на загрузку, и кажется работает, я вижу странное поведение, но это может быть я. Кто-нибудь знает, что здесь происходит?