7.5. 注册类以反应
默认情况下,本地模式中不可用的动态反应。需要访问反射的类,必须在编译时注册以反映。
在很多情况下,应用程序开发人员不需要小心,因为 Quarkus 扩展能够检测需要反映的类并自动注册它们。
然而,在某些情况下,Quarkus 扩展可能会丢失某些类,且应用程序开发人员最多需要注册它们。有两种方式可以做到这一点:
-
@io.quarkus.runtime.annotations.RegisterForReflection注释可以用来注册使用它的类,或者还可通过其targets属性注册第三方类。 application.properties中的quarkus.camel.native.reflection选项:quarkus.camel.native.reflection.include-patterns = org.apache.commons.lang3.tuple.* quarkus.camel.native.reflection.exclude-patterns = org.apache.commons.lang3.tuple.*Triple要使这些选项正常工作,包含所选类的工件必须包含 Jandex 索引('META-INF/jandex.idx'),或者必须用 'quarkus.index-dependency.*' 选项在 'application.properties' - e.g.
quarkus.index-dependency.commons-lang3.group-id = org.apache.commons quarkus.index-dependency.commons-lang3.artifact-id = commons-lang3