You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ruby中require_relative报cannot load such file LoadError求助

问题根因

两处相对路径书写错误直接触发了这个LoadError:

  • require_relative的路径计算基准是书写该行代码的文件自身所在的目录,不是项目根目录。
    你的bin/run文件位于项目的bin/子目录下,文件里写的require_relative './bin/environment.rb',实际解析出的路径是项目根目录/bin/bin/environment.rb,和报错信息里提示的不存在路径完全匹配。
  • 你的environment.rb文件实际存放在项目的config/目录下,和bin/目录为同级关系,本身就不在bin/目录内部。
修正步骤
  1. 修改bin/run文件中的路径引用
    把原来的require_relative './bin/environment.rb'替换为:
    require_relative '../config/environment.rb'
    这个路径的逻辑是:从当前bin/目录向上跳转一级回到项目根目录,再进入config目录找到environment.rb,和实际目录结构完全匹配。

  2. 同步修正config/environment.rb内部的相对路径引用
    这部分文件位于config/目录下,原来写的require_relative "./lib/xxx.rb"会解析为config/lib/xxx.rb,路径同样错误,需要把这几行改成向上跳转一级的路径:

    require 'pry'
    require 'httparty'
    
    require_relative "../lib/api.rb"
    require_relative "../lib/cli.rb"
    require_relative "../lib/pokemon.rb"
    

改完之后直接执行ruby bin/run就可以正常加载依赖运行程序。


内容的提问来源于stack exchange,提问作者Jason Sevilla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.27 00:06:03