Я пытался получить рубиновый файл, требующий другого рубинового файла, и я чувствую, что сошел с ума. Моя настройка выглядит следующим образом
Два файла в '/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)
который является правильным путем к файлу!
С тех пор я переключил его на загрузку и, похоже, работает, я вижу странное поведение, но это может быть только я. Кто-нибудь знает, что здесь будет?