Re[2]: [Ruby] Как сделать так, чтобы файл не подключался дважды

SoNaR sonar at scli.ru
Mon Jul 21 16:43:17 MSD 2003


Hello Dmitry,

Monday, July 21, 2003, 4:09:40 PM, you wrote:

DVS> On Monday 21 July 2003 19:14, SoNaR wrote:
>> Hello Yuri,
>>
>> Monday, July 21, 2003, 1:53:34 PM, you wrote:
>>
>> YL> On Mon, 21 Jul 2003 13:36:58 +0400
>>
>> YL> SoNaR <sonar at scli.ru> wrote:
>> >> Hello ruby,
>> >>
>> >>   Т.е. я подключаю файл load 'cmpcp.rbw', но если он уже подключен
>> >>   происходит ошибка повторного определения. Помнится в Си это делалось
>> >>   через объявление модульных констант.
>>
>> YL> Делай require а не load, и во второй раз он не загрузиться
>>
>> ИМХО require ищет файл в каталоге библиотек Ruby. Как сделать, чтобы
>> он подключал их из текущей директории?
DVS> require и load ищут файлы в одинаковых директориях, где конкретно можно 
DVS> посмотреть/изменить так:

irb(main):014:0>> $:
=>> ["/usr/local/lib/myrubylibs", "/var/lib/myrubylibs", 
DVS> "/usr/local/lib/site_ruby/1.6", "/usr/local/lib/site_ruby/1.6/i386-linux", 
DVS> "/usr/local/lib/site_ruby", "/usr/lib/ruby/1.6", 
DVS> "/usr/lib/ruby/1.6/i386-linux", "."]

irb(main):013:0>> $:.unshift "/usr/local/lib/myrubylibs"
=>> ["/usr/local/lib/myrubylibs", "/var/lib/myrubylibs", 
DVS> "/usr/local/lib/site_ruby/1.6", "/usr/local/lib/site_ruby/1.6/i386-linux", 
DVS> "/usr/local/lib/site_ruby", "/usr/lib/ruby/1.6", 
DVS> "/usr/lib/ruby/1.6/i386-linux", "."]

require 'lib/log.rbw'

ftp.rbw:3:in `require': No such file to load -- lib/log.rbw (LoadError)

-- 
Best regards,
 SoNaR                            mailto:sonar at scli.ru




More information about the Ruby mailing list