Maven實現(xiàn)自己的starter依賴
1. 準(zhǔn)備工作
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>
標(biāo)簽的內(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-07java Class.getSimpleName() 詳解及用法
這篇文章主要介紹了java Class.getSimpleName() 詳解及用法的相關(guān)資料,需要的朋友可以參考下2017-02-02SpringBoot 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-12Spring?Initializr只能創(chuàng)建為Java?17版本以上的問題解決
這篇文章主要給大家介紹了關(guān)于Spring?Initializr只能創(chuàng)建為Java?17版本以上問題的解決辦法,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價值,需要的朋友可以參考下2024-01-01