ConfigProperty 未将值注入字段

ConfigProperty not injecting the value into the field

我是 quarkus 环境的新手。我有一个 quarkus 应用程序,我正在尝试使用

注入 属性 配置

org.eclipse.microprofile.config.inject.ConfigProperty

这里是示例代码

public class Temp {

    @ConfigProperty(name = "secret.token")
    static String SECRET_KEY;

    public void display() {
        System.out.println(SECRET_KEY);
    }
}

这是我的内容application.properties

secret.token = ${TOKEN_SECRET:Root}

这里的显示方式总是打印null。 事情是一样的 属性 被正确地注入到 controller/resource 端点 classes 但不是在这个 class 中。我还尝试将 @Inject 与 @ConfigProperty 一起使用,但没有成功。任何指针都会有帮助。

使用注释的class需要是CDI bean。

完成此操作的最简单方法是用 @Singleton 注释 class 并在使用 class 的任何地方使用类似 @Inject Temp temp 的东西。

有关 CDI 的介绍,请参阅 https://quarkus.io/guides/cdi