Maven實現(xiàn)自己的starter依賴
1. 準備工作
1.1 創(chuàng)建一個項目
打開idea,創(chuàng)建一個springboot項目:

點擊next,添加兩個依賴:

點擊finsh,創(chuàng)建成功。
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> 標簽的內(nèi)容都刪掉:
<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 修改項目結(jié)構(gòu)

將啟動類和測試類都刪掉,在resources目錄下創(chuàng)建一個目錄 META-INF ,在其中創(chuàng)建一個文件 spring.factories :

2. 動手實現(xiàn)
2.1 創(chuàng)建客戶端類
創(chuàng)建一個包 client,在其中創(chuàng)建一個類 CalculateClient :
@AllArgsConstructor
@NoArgsConstructor
@Slf4j
public class CalculateClient {
private String host;
private String port;
public String select(String id) {
log.info("連接成功,地址為:{}", host);
log.info("連接成功,端口為:{}", port);
//返回查詢結(jié)果
return id;
}
}
2.2 創(chuàng)建配置類
創(chuàng)建一個包 config ,在其中創(chuàng)建一個類 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 配置路徑
在我們剛剛創(chuàng)建的 spring.factories 文件中添加如下內(nèi)容:
#spring boot starter org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.example.testspringbootstarter.config.ClientConfig
2.4 下載到本地倉庫
點擊 install 將項目下載到本地倉庫,這樣才能夠提供給別的項目使用:

3. 測試
在別的項目中引入我們剛剛開發(fā)的依賴:
<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);
}運行測試方法,結(jié)果如下:

到此,一個簡單的 starter 就開發(fā)完畢了。
到此這篇關(guān)于Maven實現(xiàn)自己的starter依賴的文章就介紹到這了,更多相關(guān)Maven starter依賴內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
spring cloud gateway集成hystrix實戰(zhàn)篇
這篇文章主要介紹了spring cloud gateway集成hystrix實戰(zhàn),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07
java Class.getSimpleName() 詳解及用法
這篇文章主要介紹了java Class.getSimpleName() 詳解及用法的相關(guān)資料,需要的朋友可以參考下2017-02-02
SpringBoot Session共享實現(xiàn)圖解
這篇文章主要介紹了SpringBoot Session共享實現(xiàn)圖解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-01-01
如何利用Vue+SpringBoot實現(xiàn)評論功能
簡單的評論功能是指能夠在文章底下進行評論,而且能夠?qū)υu論進行回復(fù),下面這篇文章主要給大家介紹了關(guān)于如何利用Vue+SpringBoot實現(xiàn)評論功能的相關(guān)資料,需要的朋友可以參考下2023-06-06
詳解使用SSM實現(xiàn)簡單工作流系統(tǒng)之實現(xiàn)篇
這篇文章主要介紹了使用SSM實現(xiàn)簡單工作流系統(tǒng)之實現(xiàn)篇,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12
Spring?Initializr只能創(chuàng)建為Java?17版本以上的問題解決
這篇文章主要給大家介紹了關(guān)于Spring?Initializr只能創(chuàng)建為Java?17版本以上問題的解決辦法,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價值,需要的朋友可以參考下2024-01-01

