Ruby——关于require与require_relative

本文详细解释了Ruby语言中require与require_relative两个方法的区别。require会根据$LOAD_PATH中的路径来加载相对路径或绝对路径的文件,而require_relative则直接根据文件本身的相对路径进行加载,与$LOAD_PATH无关。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

require跟require_relative都是Kernel的方法。

但是两者用起来还是有区别的。

requrie filename

1)如果filename是一个相对路径,则会在$LAOD_PATH($:)中去寻找

$LOAD_PATH. unshift(File.dirname( __FILE__))  unless  $LOAD_PATH.include?(File.dirname( __FILE__))  
#其中File.dirname(__FILE__)代表当前路径,而$LOAD_PATH.unshift方法的目的就是将当前目录作用ruby标准的加载路径。

2)如果filename是一个绝对路径,则寻找绝对路径

require_relative filename

1)直接取相对路径。此时与$LOAD_PATH($:)无关,是文件本身路径的相对地址。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值