mica-autospring boot stater 开发利器

联合创作 · 2023-09-28 05:26

mica-auto spring boot stater 开发利器

mica-auto 是 Spring cloud 微服务框架 Mica 中的一个基础组件,用来生成 Spring boot 的一些基础配置。

功能

  1. 生成 spring.factories

  2. 生成 spring-devtools.properties

  3. 生成 FeignClient 到 spring.factories 中,供 mica 中完成 Feign 自动化配置。

使用

注意: 如果你项目中使用了 Lombok 请将 mica-auto 的依赖放置到 Lombok 后面。

maven

<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-auto</artifactId>
  <version>2.0.3</version>
  <scope>provided</scope>
</dependency>

gradle >= 5.x

annotationProcessor("net.dreamlu:mica-auto:2.0.3")

gradle < 5.x

compileOnly "net.dreamlu:mica-auto:2.0.3"

原理

扫描 @Configuration,自动生成相应的配置。

初衷

在编写 Spring boot 相关插件的时候经常需要编写和修改 spring.factories 文件,其中有一次忘记修改,导致服务启动报错。想到编译期间自动生成这种配置。

注解 spring.factories 或 Spi key
@AutoContextInitializer ApplicationContextInitializer
@AutoListener ApplicationListener
@AutoRunListener SpringApplicationRunListener
@AutoEnvPostProcessor EnvironmentPostProcessor
@AutoFailureAnalyzer FailureAnalyzer
@AutoConfigImportFilter AutoConfigurationImportFilter
@AutoTemplateProvider TemplateAvailabilityProvider
@AutoEnableCircuitBreaker EnableCircuitBreaker
@AutoConfigDataLocationResolver ConfigDataLocationResolver
@AutoConfigDataLoader ConfigDataLoader
@Component EnableAutoConfiguration
@AutoIgnore 忽略,不生成到 spring.factories
@AutoService java Spi 生成配置

开源协议

LGPL(GNU Lesser General Public License

参考

Google Auto: https://github.com/google/auto

Spring 5 - spring-context-indexer:https://github.com/spring-projects/spring-framework/tree/master/spring-context-indexer

浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报