每当我使用“require”这个词时,我都会收到一个错误,如果我尝试使用 relative_require,我也会收到一个错误
Posted
技术标签:
【中文标题】每当我使用“require”这个词时,我都会收到一个错误,如果我尝试使用 relative_require,我也会收到一个错误【英文标题】:Whenever I use the word "require" I get an error and I also get an error if I try to use relative_require 【发布时间】:2014-08-13 12:52:18 【问题描述】:我尝试使用relative_require
来解决我的错误,但这似乎也不起作用。当我使用单词require
运行以下代码时:
APP_ROOT = File.dirname(__FILE__)
require File.join(APP_ROOT, 'lib')
require 'guide'
guide = Guide.new('restaurants.txt')
guide.launch!
我得到这个错误:
/Users/catherinealvarado/.rvm/rubies/ruby-2.0.0-p451/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- ./lib (LoadError)
from /Users/catherinealvarado/.rvm/rubies/ruby-2.0.0-p451/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from init.rb:11:in `<main>'
我尝试通过执行以下链接中显示的gem install netrc && gem install heroku-api
来解决此错误,但我收到一条错误消息,指出我应该安装 libyaml 并重新安装 ruby。
https://github.com/gregburek/heroku-buildpack-toolbelt/issues/5
然后我尝试安装 libyaml 并重新安装 ruby,但出现更多错误。我按照以下链接上的说明进行操作:
Please install libyaml and reinstall your ruby
我是 ruby 的新手,我已经被这个错误困扰了很长一段时间。我认为我尝试加载的文件中没有任何语法错误。非常感谢任何帮助。
【问题讨论】:
您是否检查过 APP_ROOT 是否导致路径正确? 不应该是require_relative
而不是relative_require
吗?
APP_ROOT中真的有lib.rb文件吗?
我不知道如何找到我的 APP_ROOT 或它是什么。我也不知道如何检查我是否有 lib.rb。
【参考方案1】:
您从中运行该文件的文件位于何处?根?
如果是这样,你可以这样做:
require_relative 'lib/guide'
对我来说,我几乎总是需要我的规范主管提供外部文件,所以我的调用如下所示:
require_relative '../lib/guide'
【讨论】:
我试图做 require_relative 'lib/guide' 但我收到错误:Catherines-MacBookAir:food_finder catherinealvarado$ ruby init.rb init.rb:11:inrequire_relative': cannot load such file -- /Users/catherinealvarado/Desktop/food_finder/lib (LoadError) from init.rb:11:in
以上是关于每当我使用“require”这个词时,我都会收到一个错误,如果我尝试使用 relative_require,我也会收到一个错误的主要内容,如果未能解决你的问题,请参考以下文章
每当我打开我的终端时,我都会得到错误信息-bash: export.`=': not valid identifier in ubuntu: `=': 在ubuntu中不是一个有效的标