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

SoNaR sonar at scli.ru
Mon Jul 21 17:58:48 MSD 2003


Hello SoNaR,

Monday, July 21, 2003, 5:57:25 PM, you wrote:

S> Hello Yuri,

S> Monday, July 21, 2003, 5:19:11 PM, you wrote:

YL>> On Mon, 21 Jul 2003 20:50:30 +0800
YL>> "Dmitry V. Sabanin" <sdmitry at lrn.ru> wrote:

>>> On Monday 21 July 2003 20:43, SoNaR wrote:
>>> > require 'lib/log.rbw'
>>> >
>>> > ftp.rbw:3:in `require': No such file to load -- lib/log.rbw
>>> > (LoadError)
>>> Стоит проверить значение $:, или наличие прав доступа к lib/
>>> 
>>> $ ls -l lib/mylib.rb
>>> -rw-r--r--    1 sdmitry  sdmitry        45 Jul 21 20:48 lib/mylib.rb
>>> 
>>> $ cat lib/mylib.rb
>>> module MyLib
>>>         def self.here?
>>>                 true
>>>         end
>>> end
>>> 
>>> $ cat test.rb
>>> require 'lib/mylib.rb'
>>> p MyLib::here?
>>> 
>>> $ ruby test.rb
>>> true

YL>> Товарищ SoNaR пользуется, насколько я помню и насколько утверждает
YL>> X-Mailer, не совсем юникс системой.

YL>> Поэтому  вряд ли дело в правах доступа.

YL>> Проверь пути, где ищутся файлы:

YL>>  ruby -e "p $:"

YL>> Если нет среди них точки, добавь :

YL>> $: << "."

YL>> ну и наконец проверь, а есть ли у тебя действительно этот файл:

YL>> dir  lib\mylib.rb


S> ["d:/ruby/lib/ruby/site_ruby/1.8", "d:/ruby/lib/ruby/site_ruby/1.8/i386-msvcrt",
S> "d:/ruby/lib/ruby/site_ruby", "d:/ruby/lib/ruby/1.8", "d:/ruby/lib/ruby/1.8/i386-mswin32",
S> "."]

S> может писать
S> require '/lib/mylib.rb' вместо require 'lib/mylib.rb'

Все равно не работает
>rubyw ftp.rbw
ftp.rbw:3:in `require': No such file to load -- /lib/log.rbw (LoadError)
        from ftp.rbw:3
>Exit code: 1
>rubyw ftp.rbw
ftp.rbw:3:in `require': No such file to load -- ./lib/log.rbw (LoadError)
        from ftp.rbw:3
>Exit code: 1


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




More information about the Ruby mailing list