简介
mica-auto
原理为采用
Annotation Processor
注解处理技术,编译期间自动生成
Spring boot starter
的一些基础配置。在
Spring cloud
微服务核心组件
Mica
(云母)以及
pig
,
Springblade
中大量使用。
功能
•将标记有或者组合有
@Component
的注解类生成到
spring.factories
中。•生成
spring-devtools.properties
。•组合
spring-boot-configuration-processor
和
spring-boot-autoconfigure-processor
避免项目中引入过多依赖。•生成
@FeignClient
的接口到 spring.factories 中,供 mica 中完成 Feign 自动化配置。
变更记录
[1.1.0] – 2019-05-24
添加
•添加
@AutoContextInitializer
支持
org.springframework.context.ApplicationContextInitializer
。•添加
@AutoListener
支持
org.springframework.context.ApplicationListener
。•添加
@AutoFailureAnalyzer
支持
org.springframework.boot.diagnostics.FailureAnalyzer
。
依赖升级
•升级
gradle
到
5.4.1
。•升级
google auto
到
1.0-rc5
。•升级
lombok
到
1.18.8
,•升级
Spring Boot
到
2.1.5.RELEASE
。
使用
注意:
如果你项目中使用了
Lombok
请将
mica-auto
的依赖放置到
Lombok
后面。
maven
<dependency> <groupId>net.dreamlu</groupId> <artifactId>mica-auto</artifactId> <version>1.1.0</version> <scope>provided</scope></dependency>
gradle >= 5.x
annotationProcessor(\"net.dreamlu:mica-auto:1.1.0\")
gradle < 5.x
compileOnly \"net.dreamlu:mica-auto:1.1.0\"
使用场景
主要是用来避免 Spring boot
主项目
包和
子项目、子模块
包不一致,避免类扫描不到的问题。
1.自定义 spring boot starter。2.多模块项目中的子项目(主项目不建议添加)。