@Component
该Component注释是唯一必需的注解。如果未在Java类中声明此批注,则该类不声明为组件。
可选元素
name
public abstract java.lang.String name
定义组件名称,该名称也用作Configuration Admin Service的PID。缺省值:Java类的全限定名。
默认:
”
label
public abstract java.lang.String label
通常将其用作元类型描述的对象的标题。可以通过在名称前面加一个%号来本地化该名称。默认值:%<名称>。名称
默认:
”
description
public abstract java.lang.String description
这通常用作对元类型描述的对象的描述。可以通过在名称前面加一个%号来本地化该名称。默认值:%<名称> .description
默认:
”
enabled
public abstract boolean enabled
捆绑包启动时是否启用组件。
默认:
true
factory
public abstract java.lang.String factory
组件是否为工厂组件。
默认:
”
immediate
public abstract boolean immediate
是否立即激活该组件。
默认:
false
inherit
public abstract boolean inherit
不推荐使用。 将来的版本将不再支持此功能。
基类是否应继承基类的任何服务,属性和引用声明。
默认:
true
metatype
public abstract boolean metatype
是否生成元类型服务数据。如果此参数设置为true,则Metatype服务数据将在metatype.xml此组件的文件中生成。否则,不会为此组件生成任何元类型服务数据。
默认:
false
componentAbstract
public abstract boolean componentAbstract
不推荐使用。 将来的版本将不再支持此功能。
这标记了一个抽象服务描述,该描述未添加到描述符中,但旨在通过继承重用。对于抽象类,此属性默认为true;对于具体类,默认为false。
默认:
false
ds
public abstract boolean ds
是否生成声明性服务描述符。如果未设置此参数或未将其设置为true,则在此组件的服务描述符文件中生成Declarative Services描述符。否则,不会为此组件生成声明性服务描述符。
默认:
true
specVersion
public abstract java.lang.String specVersion
编写组件所依据的Declarative Services规范的版本。通常,Maven SCR插件能够自动检测编写组件所针对的规范版本。但是,在某些情况下,这不容易或无法可靠实现。在这些情况下,请使用此属性来强制使用规范版本。
当前的有效值为1.0和1.1。如果声明了不支持的值,则会导致描述符失败。
自版本:
1.0.1
默认:
”
createPid
public abstract boolean createPid
service.pid如果没有明确声明,则默认为生成的属性。
默认:
真正
configurationFactory
public abstract boolean configurationFactory
设置元类型factory pid属性(仅适用于非工厂组件)。
自版本:
1.3
默认:
false
policy
public abstract ConfigurationPolicy policy
配置策略
自版本:
1.0
默认:
false
org.apache.felix.scr.annotations.ConfigurationPolicy.OPTIONAL
configurationPid
public abstract java.lang.String configurationPid
配置pid。缺省值为组件名称。
自版本:
1.7
默认:
”