转载

使用mica-auto生成Spring boot starter配置

mica-auto 代码自动生成

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

版本更新记录: https://github.com/lets-mica/mica-auto/blob/master/CHANGELOG.md

最新版本: https://mvnrepository.com/artifact/net.dreamlu/mica-auto

使用场景

主要是用来避免 Spring boot 主项目包同 子项目 或者 子模块 包不一致,避免包扫描不到的问题。

  • 自定义 spring boot starter
  • 多模块项目中的 子项目 (不建议主项目添加 mica-auto )。

功能

  1. 生成 spring.factories
  2. 生成 spring-devtools.properties
  3. 生成 FeignClientspring.factories 中,供 mica-pro 中完成 Feign 自动化配置。

使用

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

maven

<dependency>
  <groupId>net.dreamlu</groupId>
  <artifactId>mica-auto</artifactId>
  <version>${version}</version>
  <scope>provided</scope>
</dependency>

gradle >= 5.x

annotationProcessor("net.dreamlu:mica-auto:${version}")

gradle < 5.x

compileOnly "net.dreamlu:mica-auto:${version}"

图示

添加依赖

使用mica-auto生成Spring boot starter配置

依赖构建

当执行 mvn package 或者 gradle build 时 就会生成相关配置。

使用mica-auto生成Spring boot starter配置

使用mica-auto生成Spring boot starter配置

原理

扫描 @Component ,自动生成相应的配置,支持组合注解。

开源协议

LGPL( GNU Lesser General Public License )

源码地址

  • 码云: https://gitee.com/596392912/m...
  • Github: https://github.com/lets-mica/...

参考

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

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

原文  https://segmentfault.com/a/1190000018614406
正文到此结束
Loading...