# My-Spring-Boot-Starter **Repository Path**: MarkSmithYang/My-Spring-Boot-Starter ## Basic Information - **Project Name**: My-Spring-Boot-Starter - **Description**: 我的第一个自定义springboot的starter组件demo - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-05-21 - **Last Updated**: 2021-04-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # My-SpringBoot-Starter 我的第一个自定义springboot的starter组件demo ################################################ 1.自定义一个starter组件,需要一个核心依赖spring-boot-autoconfigure(自动配置依赖) ################################################ 2.其他的都是你自定义组件逻辑处理需要的依赖,具体根据自己需要引入 ################################################ 3.注意有几个坑: a.组件不要有主应用类(启动类),resources下面仅仅只需要META-INF/spring.factories,里面需要配置自动配置类的包路径 b.因为上面把启动类删除了,但是使用mvn install的时候,报了找不到启动类的异常,这个是最坑的,需要把idea通过spring模板 创建的工程里的spring-boot-maven-plugin依赖删除,这个本来是用来打包用的,但是这里会导致mvn install(打包安装到本地仓库)错误 c.自定义组件需要在pom文件里适当修改下groupId和artifactId以及版本等信息,当然了也可以不修改,修改的目的是为了其他的人可以方便依赖使用 ################################################ 4.这个简易版的组件,仅仅只有三个类(自动配置类(必须的一个或多个),服务类(逻辑处理等功能类),还有一个装配application(这个类并不在组件,而是 去读取依赖者的,当然了可以在组件配置默认的配置)配置文件的类,这个根据自己的实际情况考虑用不用,怎么用),还有一个配置类META-INF/spring.factories ################################################ 5.其他的工程只需添加该组件的依赖即可注入该组件的服务类调用对应的方法处理业务了 ################################################ 6.需要注意的是,引入依赖的版本可能引起冲突不可用等问题