➜ spring-boot-starter-sensitive git:(master) tree.├── pom.xml├── spring-boot-starter-sensitive.iml└── src│ ├── main│ │ ├── java│ │ │ └── cn│ │ │ └── gov│ │ │ └── zcy│ │ │ └── sensitive│ │ │ ├── HttpFileKWSeekerProcessor.java│ │ │ ├── KWSeekerAutoConfigration.java│ │ │ ├── SeekerFactory.java│ │ │ ├── SimpleKWSeekerProcessor.java│ │ │ ├── conf│ │ │ │ ├── Config.java│ │ │ │ └── SensitiveConfigProperties.java│ │ │ ├── core│ │ │ │ ├── KWSeeker.java│ │ │ │ └── KWSeekerManage.java│ │ │ ├── model│ │ │ │ ├── KeyWord.java│ │ │ │ └── SensitiveWordResult.java│ │ │ ├── processor│ │ │ │ ├── AbstractFragment.java│ │ │ │ ├── AdaptiveProcessor.java│ │ │ │ ├── HTMLFragment.java│ │ │ │ ├── IgnoreFragment.java│ │ │ │ ├── Processor.java│ │ │ │ └── WordFinder.java│ │ │ └── util│ │ │ ├── AnalysisUtil.java│ │ │ ├── EmojiUtil.java│ │ │ └── EndTagUtil.java│ │ └── resources│ │ ├── sensitive-word-single.properties│ │ └── sensitive-word.properties│ │ └── META-INF│ │ └── spring.factories│ └── test│ └── java│ ├── KWSeekerManageTest.java│ └── KwSeekerManageOSSTest.java
pom.xml依赖配置文件 spring SPI扩展文件spring.factories autoconfig自动扫描类
➜ spring-boot-starter-web tree.└── META-INF├── MANIFEST.MF└── spring.provides1 directory, 2 files
MANIFEST.MF
Manifest-Version: 1.0Implementation-Title: Spring Boot Web StarterAutomatic-Module-Name: spring.boot.starter.webImplementation-Version: 2.0.3.RELEASEBuilt-By: SpringCreated-By: Apache Maven 3.5.3Build-Jdk: 1.8.0_141
spring.provides
provides: spring-webmvc,spring-web
MANIFEST.MF文件中仅仅有一些基本的包信息,对于插件加载不会有什么作用。
spring.provides又是做什么的呢,带着这个疑问,小编搜索了下springboot的issue,果然找到了答案。
spring.providers作用分析

题外话:为什么STS没有像spring框架一样流行起来?
说到这里,我们也知道了spring.providers
这个文件对插件加载也没有任何的作用。这是怎么回事?
打包一组依赖包,命名成一个规范的名称 自动注入SPI扩展代码


文章转载自编程阁楼,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




