java quarkus。uuid作为表达式在应用程序中不起作用。性质
编写了一个程序,其中使用smallrye kafka消息读取卡夫卡主题。现在我需要这个小组。id属性在运行/重新启动服务时是随机的,因此我在quarkus项目中使用了此属性
mp.messaging.incoming.incoming_topic_name.group.id=${quarkus.uuid}
${quarkus.uuid}
在quarkus指南中提到,用于在应用程序中生成随机uuid。性质
但在应用程序中使用此属性时,会出现此异常
Failed to start application (with profile dev): java.util.NoSuchElementException: SRCFG00011: Could not expand value quarkus.uuid in property mp.messaging.incoming.incoming.incoming_topic_name.group.id
at io.smallrye.config.ExpressionConfigSourceInterceptor.lambda$getValue$0(ExpressionConfigSourceInterceptor.java:44)
at io.smallrye.common.expression.ExpressionNode.emit(ExpressionNode.java:22)
at io.smallrye.common.expression.Expression.evaluateException(Expression.java:56)
at io.smallrye.common.expression.Expression.evaluate(Expression.java:70)
at io.smallrye.config.ExpressionConfigSourceInterceptor.getValue(ExpressionConfigSourceInterceptor.java:37)
at io.smallrye.config.ExpressionConfigSourceInterceptor.getValue(ExpressionConfigSourceInterceptor.java:18)
也尝试过这个-删除组。id属性,因此kafka使用quarkus.application.name
作为使用者组id,因此即使在删除应用程序名称属性之后,quarkus也使用服务名称作为使用者组id
是否有其他方法设置组。卡夫卡侦听器的id是随机的
# 1 楼答案
正如@geoand在评论中提到的,在将Quarkus版本更新到2.2.3之后,它现在终于可以正常工作了。问题是由于使用旧版本的Quarkus,更新版本后问题得到解决