在SpringBoot项目中创建多个子模块时,IDEA会出现.properties文件小绿叶图标不出现的问题,如下:
----------------↓
网上找了各种方法还是没办法解决。
解决方案一:
1、直接创建SpringBoot启动类添加好相应的注解(@SpringBootApplication),当添加完成该注解后,即引入了org.springframework.boot.autoconfigure.SpringBootApplication包
2、完善main方法,如:SpringApplication.run(Demo.class , args) ; 此时会引入org.springframework.boot.SpringApplication包
有些人可能完成这两步再创建application.properties文件时小绿叶图标就能够正常出现了,且不会有其他报错
但有些人完成这两步骤后依旧没有正常显示而且还在第二步main方法内的SpringApplication.run(Demo.class , args)位置出现了编译错误:Cannot access org.springframework.context.ConfigurableApplicationContext
也有可能properties文件的小绿叶图标正常显示,但还是抛出如上的编译错误
根本原因:
当我们完成这两个步骤注意观察该Maven项目(子模块)对应的 " . iml "文件(我们一般可能不太注意到这个文件),该文件内会自动导入如下依赖,如图:
当 .iml 文件中出现以上6条依赖后,我们的properties 以及 main方法中将一切正常,问题得到解决!
抛出编译错Cannot access org.springframework.context.ConfigurableApplicationContext的原因是:我们完成@SpringBootApplication注解 以及main方法中的SpringApplication.run(Demo.class , args)并在文件中import正确包后,在 .iml 文件中仅产生了以下两条依赖信息,而并未将依赖信息导入完整。
PS:① 手动补齐依赖信息、②Project Structure -> Modules -> 对应子模块 -> 右侧Dependencies (点击+号,选择Library.. 找到对应的依赖添加即可)
这个Bug一直折磨了很久,每次碰到每次卡,每次卡都很恼火,找了很多也得不到有效的解决,这个方法个人亲测有效。