spring boot配置加载顺序问题

img


这个i18nUtils一直报空,init方法没有执行,求解答

已经解决了~,感谢各位大哥抽出宝贵的时间来为我解答~

初始化,最新加载,静态代码块,构造方法中执行初始化方法都可以

哥们可以,自己解决是不是感觉很爽,小有成就感

i18nUtils这个工具在哪里定义的啊。检查下你import的包是否正确,比如有同名称的i18nUtils类,但是import错了包的路径,如果是这个原因,修改为其他包下的i18nUtils即可。其次,检查下你这个i18nUtils中的注解是否添加正确,从而导致没有正确初始化i18nUtils

检查一下定义i18nUtils的时候,没有加上@Component或@Service等Spring Bean注解

类级的注解有吗,比如Componment, Configuration之类的

有其他地方在spring初始化阶段调用了getI18Msg,也就是该类还没初始化时,就调用了getI18Msg,由于getI18Msg是静态方法,不依赖于该类的实例或者说是bean

引用chatgpt:
Spring Boot 的配置文件加载顺序如下:

  1. 项目内配置文件加载顺序:

    • ./config/ (项目根路径下的 config 文件夹)
    • ./ (项目根路径)
    • classpath:/config/ (类路径下的 config 文件夹)
    • classpath:/ (类路径)
  2. Spring Boot 内部配置加载顺序:

    • application.properties 或者 application.yml
  3. Java System Properties 配置:

    • java.util.Properties
  4. System Environment Variables 配置:

    • System.getenv()