本篇内容主要讲解“Maven怎么实现自己的starter依赖”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Maven怎么实现自己的starter依赖”吧!
1. 准备工作
1.1 创建一个项目
打开idea,创建一个springboot项目:
点击next,添加两个依赖:
点击finsh,创建成功。
1.2 修改pom文件
将pom文件中的版本号改为
0.0.1(非必须操作):
<groupId>com.example</groupId> <artifactId>test-spring-boot-starter</artifactId> <!-- <version>0.0.1-SNAPSHOT</version>--> <version>0.0.1</version>
将
<build>标签的内容都删掉:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <excludes> <exclude> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </exclude> </excludes> </configuration> </plugin> </plugins> </build>
因为这是一个我们自定义的一套sdk,并不需要打成jar包。
1.3 修改项目结构
将启动类和测试类都删掉,在resources目录下创建一个目录
META-INF,在其中创建一个文件
spring.factories:
2. 动手实现
2.1 创建客户端类
创建一个包
client,在其中创建一个类
CalculateClient:
@AllArgsConstructor @NoArgsConstructor @Slf4j public class CalculateClient { private String host; private String port; public String select(String id) { log.info("连接成功,地址为:{}", host); log.info("连接成功,端口为:{}", port); //返回查询结果 return id; } }
2.2 创建配置类
创建一个包
config,在其中创建一个类
CalculateConfig:
@Configuration @ConfigurationProperties("calculate.client") @Data @ComponentScan public class ClientConfig { private String host; private String port; @Bean public CalculateClient calculateClient() { return new CalculateClient(host, port); } }
2.3 配置路径
在我们刚刚创建的
spring.factories文件中添加如下内容:
#spring boot starter org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.example.testspringbootstarter.config.ClientConfig
2.4 下载到本地仓库
点击
install将项目下载到本地仓库,这样才能够提供给别的项目使用:
3. 测试
在别的项目中引入我们刚刚开发的依赖:
<dependency> <groupId>com.example</groupId> <artifactId>test-spring-boot-starter</artifactId> <version>0.0.1</version> </dependency>
然后在项目的
application.yml文件中配置
host和
port:
然后在测试类中编写一个测试方法:
@Autowired private CalculateClient calculateClient; @Test public void test(){ String result = calculateClient.select("1"); System.out.println(result); }
运行测试方法,结果如下:
到此,一个简单的
starter就开发完毕了。