将jHipster项目从版本4.14.5升级到版本5.8.1后,当我尝试运行应用程序时出现此错误:
上下文初始化期间遇到异常 - 取消刷新尝试:org.springframework.beans.factory.BeanCreationException:创建文件[\ config \ LoggingConfiguration.class]中定义名为'loggingConfiguration'的bean时出错:
在bean创建期间出现意外异常;嵌套异常是java.lang.IllegalArgumentException:无法解析值“$ {server.port}”中的占位符'server.port'
你知道问题的原因是什么吗?
Spring在各个位置查找@Value
注释中指定的占位符。由于您可能正在运行Spring Boot应用程序,因此您可能需要检查documentation以获取外部化配置。
我敢打赌你确实将它指定为命令行参数,或者在application.properties
资源文件中指定。
顺便说一句,.
(点)不是问题。
我只是遇到了同样的问题。当我用“_”替换“。”时,它确实有效。所以我的方法:
@Value("${server_port")
Integer port;
和我的properties.yml
server:
port: 1234
server_port: 1234
当然,冗余并不理想,但@Value似乎无法处理“。”。