为什么Ruby会找到我所有的类,除了一个名为Config的类?

为什么Ruby会找到我所有的类,除了一个名为Config的类?,ruby,rubygems,gem,require,Ruby,Rubygems,Gem,Require,我有一个在Linux上运行良好的Ruby程序。我现在正在Windows7上试用,应该没问题,因为它只使用了两个安装没有问题的库 我得到的错误与我自己的代码有关。我有一个名为config.rb的文件,它有一个名为config的类。它有一些可以更改的值。听起来很无害 但是,我不能要求这门课。Ruby gems custom require(我根本不用gems)找不到我的文件。这是怎么回事 <internal:lib/rubygems/custom_require>:29:in `requ

我有一个在Linux上运行良好的Ruby程序。我现在正在Windows7上试用,应该没问题,因为它只使用了两个安装没有问题的库

我得到的错误与我自己的代码有关。我有一个名为
config.rb
的文件,它有一个名为
config
的类。它有一些可以更改的值。听起来很无害

但是,我不能
要求
这门课。Ruby gems custom require(我根本不用gems)找不到我的文件。这是怎么回事

<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- config (LoadError)
    from <internal:lib/rubygems/custom_require>:29:in `require'
    from apitester.rb:9:in `<main>'

config.rb
就是这个简单的类,在同一个文件夹中。

在Ruby 1.8中尝试以下内容:

require File.join(File.dirname(__FILE__), 'config')
或者,如果您在Ruby 1.9中使用:

require_relative 'config'

这种方法很有效,很高兴知道ruby制作了一个变量化的命名配置,所以你不能用一堆类变量来命名一个类配置。真的很蹩脚。为什么我需要基于2个版本的ruby的2个不同需求??这真的打击了“为什么我需要基于2个版本的ruby的2个不同需求??这真的打击了”,因为ruby继续被积极开发,并且正在被修改以提供更好的安全性。你希望它保持不变,这样你就可以继续有安全缺陷吗?“很高兴知道ruby制作了一个变量命名的配置,这样你就不能用一堆类变量命名一个类配置了。真的很蹩脚。”ruby没有一个变量命名为“Config”。也许是你加载的东西定义了这个名字?也许Ruby或Gems试图告诉您,您做错了什么,并使用您在错误消息中定义的“配置”来帮助您?
require_relative 'config'