我有一个包含一堆类的模块,其中一个类看起来像这样:
module ModularModule
class ClassyClass
def initialize(host, user, pass)
$jenkins = JenkinsApi::Client.new(:server_ip => host, \
:username => user, \
:password => pass, \
:ssl => true, \
:server_port => 443)
end
...
end
end
我尝试像这样初始化类:
ModularModule::ClassyClass.new(JENKINS_HOST, JENKINS_USER, JENKINS_PASS)
我明白了:
ArgumentError: wrong number of arguments (3 for 0)
我可以看到它与"错误"初始化被调用,但我不能看到我应该如何创建我的班级的新实例?
答案 0 :(得分:0)
TL; DR 上面的代码很好,应该适合任何阅读此内容的人。
哦,我的。对不起,经过一个多小时的拔毛,我沮丧地发布了这个,但事实证明这是荒谬的。
我在调用它的代码中有require ClassyClass
,它正确地从已安装的Gem中提取旧代码,但我想调用已更改的代码(使用使用initialize
添加require_relative path/to/new/code
}的参数。
抱歉! :P