SpringBoot 项目启动报 Error starting Tomcat context. Exception 问题求解决

48 天前
 tiRolin

完整的报错内容如下所示:

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 搜索引擎上的方法我基本都尝试过了,都无法解决该问题,我实在没法了所以我来这问问各位,希望有大佬能救一下

1271 次点击
所在节点    Java
6 条回复
sagaxu
48 天前
application.properties 实际生效了吗?你可以在你自己的代码里注入这个配置看看有没有读取到。如果读取不到,就是配置问题,反之是其它原因。那个依赖自身也可以指定从 xx 配置文件读取,不一定是全局配置。
ghost024
48 天前
用 idea 搜一下这个 class reqEnvContextFilter ,应该是这个里面用到了那个配置,可以打个断点看看为啥没读到,如果不是第三方依赖可以给个默认值。
mrochcnnnnn
48 天前
看看是不是配置文件没有打包到 class 里面
或者如果在用配置中心的话看看是不是读配置文件有问题
fuxinya
48 天前
siweipancc
47 天前
横杠有特殊规则
tiRolin
46 天前
@fuxinya 很感谢您的帮助,也感谢其他所有人的帮助,我已经解决了该问题了,该问题的原因是我没有正确引入 logback.xml 文件,虽然我仍然不知道为什么不引入就会产生这个问题,但是我引入了之后已经解决了该问题了,再次感谢大家的帮助,谢谢各位

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1077393

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX