查找模块在Ruby中的位置

查找模块在Ruby中的位置,ruby,reverse-engineering,Ruby,Reverse Engineering,这是我第一次与Ruby合作。 我目前正在使用一个程序,该程序以“include MODULENAME”开头包含一个模块 我的目标是“重建”这个程序,在我自己的软件中实现它。 我的问题是我不知道这个模块是从哪里来的。 该程序允许输入更多命令(在Ruby中)。所以我的问题是,有没有什么命令可以用来找到这个模块的来源 我感激任何帮助 Object.const_source_location(MODULENAME) 应该告诉您在哪里定义了MODULENAME。查看文档中的可能有助于找到其来源。因此。。

这是我第一次与Ruby合作。 我目前正在使用一个程序,该程序以“include MODULENAME”开头包含一个模块

我的目标是“重建”这个程序,在我自己的软件中实现它。 我的问题是我不知道这个模块是从哪里来的。 该程序允许输入更多命令(在Ruby中)。所以我的问题是,有没有什么命令可以用来找到这个模块的来源

我感激任何帮助

Object.const_source_location(MODULENAME)

应该告诉您在哪里定义了
MODULENAME
。查看文档中的

可能有助于找到其来源。因此。。使用puts ModuleName.constants,我尝试获取要搜索的常量。在写入puts ModuleName.const\u source\u location('constant')时,我收到一条错误消息->ModuleName:Module(nomethoderor)的“未定义方法‘const\u source\u location’”
ModuleName
是您要搜索的常量。但是您似乎正在运行一个较旧的Ruby版本。您可以使用Ruby 2.7或3.0运行该程序吗?我使用的程序似乎有Ruby 1.8版…我将看看是否可以以某种方式更新它。感谢您的帮助!或者,通过源代码执行
grep
(包括gems)用于
模块ModuleName
或仅用于
模块Name
。您好,这里有相同的问题。我收到以下错误消息:对象的未定义方法“const\u source\u location”:类(NoMethodError)您使用的是什么版本的Ruby?
const\u source\u location
大约是一年半前的事了。您是否仍然使用旧版本的Ruby?我使用的程序似乎有Ruby 1.8版……我会看看是否可以更新它。谢谢您的帮助!