我在使用 Jenkins property.jelly propertyDescriptor 字段时遇到了一些麻烦。在做了一些研究之后,我发现 propertyDescriptor 属性的实现令人困惑。
这是代码:
看到这一行:
<j:set var="descriptor" value="${attrs.propertyDescriptor ?: app.getDescriptorOrDie(descriptor.getPropertyTypeOrDie(instance,field).clazz)}" />
我假设 ?: 是果冻中的三元运算符吗?但是,它本质上说:如果设置了 ${attrs.propertyDescriptor},则将“descriptor”设置为空,否则将“descriptor”设置为 app.getDescriptorOrDie( ... )
不应该是:
<j:set var="descriptor" value="${attrs.propertyDescriptor ? ${attrs.propertyDescriptor : app.getDescriptorOrDie(descriptor.getPropertyTypeOrDie(instance,field).clazz)}" />
这是 property.jelly 中的错误吗?