springboot 自定义starter项目Unable to read meta-data for class

springboot 自定义starter包,在项目中引用,启动报错。

org.springframework.boot.SpringApplication [SpringApplication.java:843] Application run failed
java.lang.IllegalStateException: Unable to read meta-data for class com.hxg.mail.springboot.config.HxgMailAutoConfigure

查看项目中的jar依赖引用,发现未包含自己定义的配置类,如下图

springboot 自定义starter项目Unable to read meta-data for class_第1张图片

查看springboot starter包中的target目标,也没有配置类

springboot 自定义starter项目Unable to read meta-data for class_第2张图片

查看springboot官网,springboot3的配置方式为

Spring Boot checks for the presence of a META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports file within your published jar. The file should list your configuration classes, with one class name per line, as shown in the following example:

com.mycorp.libx.autoconfigure.LibXAutoConfiguration
com.mycorp.libx.autoconfigure.LibXWebAutoConfiguration

即META-INF目标下创建spring目录,然后创建org.springframework.boot.autoconfigure.AutoConfiguration.imports文件,将配置类写入该文件。

改变配置类后依旧出现问题,后来发现springboot3依赖的是jdk17,我本地安装的是jdk12,将springboot版本改为springboot2后,打包正常。

springboot 自定义starter项目Unable to read meta-data for class_第3张图片


    org.springframework.boot
    spring-boot-configuration-processor
    2.5.3



    org.springframework.boot
    spring-boot-autoconfigure
    2.5.3
            

你可能感兴趣的:(spring,boot,后端,java)