java - ConfigProperty 未将值注入字段
问题描述
我是 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}
这里的显示方法总是打印空值。事情是相同的属性被正确地注入到控制器/资源端点类中,但不在这个类中。我也尝试使用@Inject 和@ConfigProperty,但没有运气。任何指针都会有帮助。
解决方案
使用注释的类需要是 CDI bean。
实现这一点的最简单方法是使用类注解@Singleton
和使用类,例如使用类@Inject Temp temp
的任何地方。
有关CDI 的介绍,请参见https://quarkus.io/guides/cdi
推荐阅读
- html - 在制作使用语义 HTML 时,我可以使用
和 aria- describeby 而不是
- javascript - 在伪造查看器上上传了多个 IFC 文件,但位置不正确
- java - 如何在 Android 上的 Yandex 地图中获取当前位置
- python - 使用 solana python 进行交易
- python-3.x - 根据python中的键值过滤dicts列表
- websocket - websocket._exceptions.WebSocketProxyException:通过代理连接失败状态:403 在任何地方的 python 中运行时
- reactjs - 如何修复“重新加载页面后更改选项卡”。
- node.js - 如何在 express 中设置正确的 cookie?
- php - PHP proc_open() 转义多行参数
- python - 变量值在打印和附加之间发生变化