spring.factories中配置ApplicationContextInitializer实现类却不起作用

devtools/2024/11/15 4:52:21/

自定义了一个ApplicationContextInitializer的实现类如下

java">public class MyApplicationContextInitializer implements ApplicationContextInitializer<ConfigurableApplicationContext> {@Overridepublic void initialize(ConfigurableApplicationContext applicationContext) {System.out.println("将myMap注入到propertySources中");// 获取环境对象ConfigurableEnvironment environment = applicationContext.getEnvironment();// 获取属性来源对象MutablePropertySources propertySources = environment.getPropertySources();//添加新的属性元Map<String,Object> myMap = new HashMap<>();myMap.put("applicationName","big-event");propertySources.addLast(new MapPropertySource("myMap",myMap));}
}

并且在resources/META-INF/spring.factories中对该实现类进行配置

org.springframework.context.ApplicationContextInitializer=com.spring.study.initializer.MyApplicationContextInitializer

最终发现在springboot启动时,该实现类没有被调用,检查了很久,spring.factories配置没问题,路径也没问题,猜测可能时springboot版本问题,切换了版本还是不行,找到一篇博客里面提到了该问题的原因,最终发现在pom文件中<packaging>pom</packaging>导致spring.factories失效
使用pom打包时,不会生成jar包,自然在引入时就没有自动注入的过程,因此删掉它,重新编译可以解决问题,这里做个记录。


http://www.ppmy.cn/devtools/11000.html

相关文章

走出“至暗时刻”,托举三只松鼠的力量是什么?

品牌是时代的产物&#xff0c;也随时代而变化。能存在超过十年&#xff0c;依旧欣欣向荣的品牌&#xff0c;身上或多或少都承载了关于穿越周期的哲学。 最近的例子是零食行业的三只松鼠&#xff0c;三只松鼠的创业史&#xff0c;内涵非常丰富&#xff0c;有电商和实体的纠缠&a…

基于Springboot的心灵治愈交流平台

基于SpringbootVue的心灵治愈交流平台的设计与实现 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringbootMybatis工具&#xff1a;IDEA、Maven、Navicat 系统展示 用户登录 首页展示 系统公告 心理咨询师 心灵专栏 压力测试 小纸条 后台登录界面 后…

linux18:进程等待

进程等待的必要性 1&#xff1a;子进程创建的目的是要完成父进程指派的某个任务&#xff0c;当子进程运行完毕退出时&#xff0c;父进程需要通过进程等待的方式&#xff0c;回收子进程资源&#xff0c;获取子进程退出信息&#xff08;子进程有无异常&#xff1f;没有异常结果是…

​Gu‘reum 工作室在The Sandbox推出 2024 年农历新年活动!

通过区块链游戏分享韩国文化并建立社区&#xff01; 去年 12 月&#xff0c;Gurenum 工作室 在The Sandbox 元宇宙上发起了 2023 年年末 Lan Party 直播活动。 https://sandboxgame.medium.com/gureum-studio-hosts-a-year-end-lan-party-in-the-sandbox-metaverse-b9a3fc6e7b9…

数据类型判断的方法

一、typeof 使用方法如下&#xff1a; typeof operand typeof(operand)operand表示要返回类型的对象或基本类型的表达式 &#xff0c;typeof运算符返回一个字符串&#xff0c;表示操作数的类型。 typeof 666 // number typeof 666 // string typeof undefined // undefined …

什么是Redis?

Redis 是一个开源的高性能键值存储数据库&#xff0c;它以内存中的数据结构服务器的形式存储数据&#xff0c;允许对这些数据进行读取和写入。Redis 是一个多用途的工具&#xff0c;被广泛用作缓存、消息队列、计数器、实时排行榜、会话存储和分布式锁等。 以下是 Redis 的一些…

广州大学《软件工程》实验报告三软件设计

广州大学学生实验报告&#xff08;三&#xff09; 开课学院及实验室&#xff1a; 学院 年级/专业/班 姓名 学号 实验课程名称 软件工程导论实验 成绩 实验项目名称 软件设计 指导老师 一、实验目的 掌握软件设计建模技术&#xff0c;能够撰写软件设计文…

oracle之--动态sql(execute immediate ‘ ‘)

动态sql--execute immediate 原因&#xff1a;ddl语句&#xff0c;truncate语句 不能直接使用&#xff0c;需要封装起来 --动态sql--execute immediate 因为ddl&#xff0c;truncate 不能直接使用&#xff0c;需要封装起来 --1.TRUNCATE table declare BEGIN --truncate…