作者:嗒嗒爱臭臭 | 来源:互联网 | 2023-05-27 17:46
我刚刚写了这个维基页面,介绍如何在插件中进行依赖注入:
https://wiki.jenkins-ci.org/display/JENKINS/Dependency+Injection
我想使用它,以便可以将对外部资源的移动请求提供给服务类,并在单元测试期间将模拟传递给我的发布者。
我在Wiki中给出的示例的问题在于我无法轻松提供模拟:
@Override
public boolean perform(AbstractBuild, ?> build, Launcher launcher, BuildListener listener)
{
Guice.createInjector(new MyModule()).injectMembers(this);
// ...
mySvc.myServiceMethod(); // "it works!"
}
我需要删除该Guice.createInjector()行。
是否可以将AbstractModule子类标记为Guice“选择”?我试着用@Exension从这里注释标记它https://issues.jenkins-ci.org/browse/JENKINS-8751但它没有被注入。