首页 > 解决方案 > Ruby - LoadError:无法加载此类文件 - ../credentials_go_in_var_lib/credentials

问题描述

我有一个使用红宝石的项目。我有一个文件 status.rb 下面是这个文件的一些代码。

#!/usr/bin/env ruby

require 'rest-client'
require 'base64'
require 'pg'
require 'cgi'
require 'json'

require 'tzinfo'
require 'date'

require '../credentials_go_in_var_lib_havesomefun/credentials'

项目路径

/home/microsoft/站点/项目

status.rb 文件路径

/home/microsoft/sites/project/linux/dashboard/status.rb

credentials.rb 文件的路径

/home/microsoft/sites/project/linux/credentials_go_in_var_lib/credentials.rb

我正在执行 ruby​​ 的命令

 ruby linux/dashboard/status.rb

我得到以下错误

Traceback(最近一次通话最后一次):2:来自 linux/dashboard/status.rb:14:in <main>' 1: from /home/microsoft/.rvm/rubies/ruby-2.5.1/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require' /home/microsoft/.rvm/rubies/ruby-2.5.1/lib/ruby/2.5.0/rubygems/ core_ext/kernel_require.rb:59:in `require': 无法加载此类文件 -- ../credentials_go_in_var_lib/credentials (LoadError)

如果所有文件都在同一个目录中,那么它可以轻松加载凭据文件。

请任何人指导我做错了什么。

标签: ruby-on-railsruby

解决方案


而不是require你需要使用require_relative,因为文件的位置是相对于你所在的文件

require_relative '../credentials_go_in_var_lib_havesomefun/credentials'

推荐阅读