我正在尝试扩展Jenkins Xcode plugin,并希望集成一个构建后步骤。
插件的当前状态允许通过Jenkins设置页面配置密钥链。因此,它实现了一个描述符并覆盖了它的configure方法。UI在global.jelly文件中定义。
现在我想访问从另一个类配置的密钥链。我创建了hudson.tasks.Notifier的一个子类(该类与XCodeBuilder类位于同一个包中),它本身包含一个子类化BuildStepDescriptor<Builder>的类。基本上,我在XCodeBuilder类中复制了BuildStepDescriptor的内容,但是当尝试显示keychains属性的内容时,它显示没有元素(在执行System.out.println时)。构建后步骤的UI本身显示得很好。
我的Java知识有点生疏,这些是我扩展Jenkins的第一步。因此,也许我甚至不能从插件中访问这些数据,但任何帮助都是非常感谢的。
发布于 2013-05-29 00:13:18
我将为网上搜索的人回答我自己的问题。我遵循了here提出的解决方案。
Descriptor类继承到新创建的类中。config.jelly。在需要访问全局配置的@Inject final对其进行批注首先,我将构建步骤的私有成员变量放在构建步骤类本身中,并尝试通过jelly中的${instance.getGlobalConfiguration().getProperty()}访问它。但这并不起作用,因为新的尚未保存的构建步骤的实例并不存在。因此,我将私有成员放在构建步骤的Descriptor中,并通过${descriptor.getGlobalConfiguration().getProperty()}访问它。
https://stackoverflow.com/questions/16778721
复制相似问题