完整的报错内容如下所示:
2024-10-02 01:15:19.714 ERROR 29348 --- [ main] o.s.b.web.embedded.tomcat.TomcatStarter : Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'reqEnvContextFilterRegistrationBean' defined in class path resource [com/example/common/core/CommonCoreConfiguration.class]: Unsatisfied dependency expressed through method 'reqEnvContextFilterRegistrationBean' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'reqEnvContextFilter': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'sys.app-name' in value "${sys.app-name}"
这个问题显然是因为无法解析出 sys.app-name 的值导致的,然而奇怪就奇怪在这个值我很明确我已经设置过了,在 application.properties 中,有下面的配置
sys.app-name=demo
sys.ms-name=demo
按说是不该出现这个问题的,但是却会报这个问题 我的项目中并没有直接使用 sys.app-name 这个值,但由于这个是我公司的 demo 项目,内部的公司依赖可能在某处解析了该值,只是我不知道而已,我没法通过不使用该值或者给他一个默认值的方法来解决这个问题 我使用的 jdk 版本为 8 ,maven 版本为 3.5.3 搜索引擎上的方法我基本都尝试过了,都无法解决该问题,我实在没法了所以我来这问问各位,希望有大佬能救一下
1
sagaxu 52 天前 via Android
application.properties 实际生效了吗?你可以在你自己的代码里注入这个配置看看有没有读取到。如果读取不到,就是配置问题,反之是其它原因。那个依赖自身也可以指定从 xx 配置文件读取,不一定是全局配置。
|
2
ghost024 52 天前
用 idea 搜一下这个 class reqEnvContextFilter ,应该是这个里面用到了那个配置,可以打个断点看看为啥没读到,如果不是第三方依赖可以给个默认值。
|
3
mrochcnnnnn 52 天前
看看是不是配置文件没有打包到 class 里面
或者如果在用配置中心的话看看是不是读配置文件有问题 |
5
siweipancc 51 天前 via iPhone
横杠有特殊规则
|