微服務多模塊構建feign項目過程與一些報錯(2025詳細版)

目錄

1.eureka-server的注意事項

2.eureka-feign的注意事項

3.多模塊構建feign項目過程

3.1創建父項目

3.2創建子項目eureka-server

3.3創建子項目eureka-provider

3.4創建子項目eureka-feign

3.5運行

給個點贊謝謝


1.eureka-server的注意事項

? ? ? ? eureka-server的yml文件中的元素冒號后面要有空格

? ? ? ? instance后面最好有hostname然后才寫localhost。可以解決無法識別$的陰間錯誤。

2.eureka-feign的注意事項

如果eureka-feign報以下錯誤

大概率是因為沒有@SpringBootApplication的注解。加上就可以了。

3.多模塊構建feign項目過程

3.1創建父項目

? ? ? ? 父項目的主要作用是為了統一子模塊的pom依賴。然后就沒什么用了。

? ? ? ? 創建一個maven項目作為父項目。

? ? ? ? 導入公用的pom文件,根據大家的版本自行調整。我這里導入的是eureka-server的pom文件,因為provider和feign的pom都是在eureka-server的pom的基礎上添加了一些依賴

? ? ? ? 這里因為要用子模塊,所以要添加依賴標簽<modules>,就是下面圖片中帶注釋的部分,是表明父項目的子模塊有那些。這里給出截圖:

????????初始為就行,當你添加一個子模塊就會自動添加

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.18</version><relativePath/></parent><groupId>com.itheima</groupId><artifactId>first</artifactId><version>0.0.1-SNAPSHOT</version><packaging>pom</packaging><name>first</name><description>Demo project for Spring Boot</description><properties><java.version>17</java.version><spring-cloud.version>Greenwich.SR2</spring-cloud.version></properties><modules>
<!--        <module>eureka-server</module>-->
<!--        <module>eureka-provider</module>-->
<!--        <module>eureka-feign</module>--></modules><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId> spring-cloud-starter-netflix-eureka-server </artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>2021.0.8</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>
</project>

3.2創建子項目eureka-server

選擇新建選擇模塊。創建eureka-server

因為父項目的pom就是eureka-server的pom因此我們不用管eureka-server的pom文件。

然后創建yml和EurekaServerApplication

server:port: 7001
spring:application:name: eureka-server       //解決無法解析$問題
eureka:instance:hostname: localhostclient:fetch-registry: falseregister-with-eureka: falseservice-url:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
package com.itheima;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {public static void main(String[] args) {SpringApplication.run(EurekaServerApplication.class, args);}}

3.3創建子項目eureka-provider

????????因為eureka-provider的pom比server多,我們要添加2個依賴。添加的依賴不可以和父項目重合(個人認為,因為報錯了)。就比如父項目中有:

那么子項目中好像不能用下圖,因為我報錯了,你們可以試試。

初始為下圖:

更改:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.itheima</groupId><artifactId>first</artifactId><version>0.0.1-SNAPSHOT</version></parent><artifactId>eureka-provider</artifactId><dependencies><!--        <dependency>--><!--            <groupId>org.springframework.cloud</groupId>--><!--            <artifactId> spring-cloud-starter-netflix-eureka-client </artifactId>--><!--        </dependency>--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.1.7.RELEASE</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><version>2.1.7.RELEASE</version><scope>test</scope></dependency></dependencies></project>

這里補上yml

server:port: 7006
spring:application:name: eureka-provider
eureka:client:service-url:defaultZone: http://localhost:7001/eureka/instance:hostname: localhost

EurekaProviderApplication

package com.itheima;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;@SpringBootApplication
@EnableEurekaClient
@EnableDiscoveryClient
public class EurekaProviderApplication {public static void main(String[] args) {SpringApplication.run(EurekaProviderApplication.class, args);}}

controll...........這里省略

3.4創建子項目eureka-feign

修改pom文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.itheima</groupId><artifactId>first</artifactId><version>0.0.1-SNAPSHOT</version></parent><artifactId>eureka-feign</artifactId><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><version>2.1.7.RELEASE</version><scope>test</scope></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.1.7.RELEASE</version></dependency></dependencies></project>

編寫yml,Application,server,controll..........省略。

3.5運行

點擊左下角服務,右鍵Spring Boot就可以挨個運行了。

點擊端口號即可跳轉。

給個點贊謝謝

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/901342.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/901342.shtml
英文地址,請注明出處:http://en.pswp.cn/news/901342.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

第十一屆 藍橋杯 嵌入式 省賽

一、分析 本屆的風格又變了一番&#xff0c;但是難度也降低了些。 又是考察了 PWM 和 ADC。 第八、九屆也考察了 PWM。建議先復習這兩屆&#xff0c;再回來模擬。 LCD的顯示也提了額外的要求。 1. 功能概述 電位器 R37 輸出的模擬電壓信號 PA6輸出頻率固定&#xff0c;占…

小試牛刀-抽獎程序

編寫抽獎程序 需求&#xff1a;設計一個抽獎程序&#xff0c;點擊抽獎按鈕隨機抽取一個名字作為中獎者 目標&#xff1a;了解項目結構&#xff0c;簡單UI布局&#xff0c;屬性方法、事件方法&#xff0c;程序運行及調試 界面原型 ? 待抽獎&#xff1a; 點擊抽獎按鈕&#x…

代碼隨想錄算法訓練營day2(數組)

華子目錄 長度最小的子數組思路 螺旋矩陣思路總結 長度最小的子數組 https://leetcode.cn/problems/minimum-size-subarray-sum/ 思路 使用滑動窗口&#xff0c;left表示滑動窗口的起始點&#xff0c;right表示滑動窗口的終點 class Solution:def minSubArrayLen(self, targ…

6.1 GitHub億級數據采集實戰:雙通道架構+三級容災設計,破解API限制與反爬難題

GitHub 項目數據獲取功能設計與實現 關鍵詞:GitHub API 集成、網頁爬蟲開發、數據存儲設計、定時任務調度、異常處理機制 1. 數據獲取架構設計 采用雙通道數據采集策略,同時使用 GitHub 官方 API 和網頁爬蟲技術確保數據完整性: #mermaid-svg-XUg7xhHrzFAozG4J {font-fami…

設計模式(結構型)-橋接模式

目錄 摘要 定義 類圖 角色 具體實現 優缺點 優點 缺點 使用場景 使用案例 JDBC 和橋接模式 總結 摘要 在軟件開發領域&#xff0c;隨著系統規模和復雜性的不斷攀升&#xff0c;如何設計出具有良好擴展性、靈活性以及可維護性的軟件架構成為關鍵挑戰。橋接模式作為一…

Go 微服務框架 | 中間件

文章目錄 定義中間件前置中間件后置中間件路由級別中間件 定義中間件 中間件的作用是給應用添加一些額外的功能&#xff0c;但是不會影響原有應用的編碼方式&#xff0c;想用的時候直接添加&#xff0c;不想用的時候也可以輕松去除&#xff0c;實現所謂的可插拔。中間件的實現…

leetcode 198. House Robber

本題是動態規劃問題。 第一步&#xff0c;明確并理解dp數組以及下標的含義 dp[i]表示從第0號房間一直到第i號房間(包含第i號房間)可以偷到的最大金額&#xff0c;具體怎么偷這里不考慮&#xff0c;第i1號及之后的房間也不考慮。換句話說&#xff0c;dp[i]也就是只考慮[0,i]號…

掌趣科技前端面試題及參考答案

你使用 Vue 的頻率如何,用得比較多嗎? 在前端開發工作中,我對 Vue 的使用較為頻繁。Vue 作為一款輕量級、易于上手且功能強大的前端框架,在眾多項目里都發揮著重要作用。 在日常的項目里,Vue 的組件化開發特性為我帶來了極大的便利。組件化能夠將頁面拆分成多個小的、可復…

深入解析Python爬蟲技術:從基礎到實戰的功能工具開發指南

一、引言:Python 爬蟲技術的核心價值 在數據驅動的時代,網絡爬蟲作為獲取公開數據的重要工具,正發揮著越來越關鍵的作用。Python 憑借其簡潔的語法、豐富的生態工具以及強大的擴展性,成為爬蟲開發的首選語言。根據 Stack Overflow 2024 年開發者調查,68% 的專業爬蟲開發者…

CSS 筆記——Flexbox(彈性盒布局)

目錄 1. Flex 容器與 Flex 項目 2. 主軸與交叉軸 3. Flex 容器的屬性 display flex-direction justify-content align-items align-content flex-wrap 4. Flex 項目的屬性 flex-grow flex-shrink flex-basis flex align-self 5. Flexbox 的優點 6. Flexbox 的…

Java學習手冊:Java反射與注解

Java反射&#xff08;Reflection&#xff09;和注解&#xff08;Annotation&#xff09;是Java語言中兩個強大的特性&#xff0c;它們在框架開發和復雜應用中扮演著重要角色。反射允許程序在運行時檢查和操作類、對象、接口、字段和方法&#xff0c;而注解則提供了一種元數據形…

JavaWeb遇到的問題匯總

問題一&#xff1a;&#xff08;鍵值對最后一項沒有逗號&#xff09; 在JSON字符串轉自定義對象和自定義對象轉JSON字符串時&#xff1a; 如圖所示&#xff1a;若忘記刪除鍵值對的最后一項沒有逗號時&#xff0c;則下一句轉換不會生效&#xff0c;應該刪除最后一項的逗號。 解…

模板引擎語法-變量

模板引擎語法-變量 文章目錄 模板引擎語法-變量&#xff08;一&#xff09;在Django框架模板中使用變量的代碼實例&#xff08;二&#xff09;在Django框架模板中使用變量對象屬性的代碼實例&#xff08;三&#xff09;在Django框架模板中使用變量顯示列表 &#xff08;一&…

AUTO-RAG: AUTONOMOUS RETRIEVAL-AUGMENTED GENERATION FOR LARGE LANGUAGE MODELS

Auto-RAG&#xff1a;用于大型語言模型的自主檢索增強生成 單位&#xff1a;中科院計算所 代碼&#xff1a; https://github.com/ictnlp/Auto-RAG 擬解決問題&#xff1a;通過手動構建規則或者few-shot prompting產生的額外推理開銷。 貢獻&#xff1a;提出一種以LLM決策為中…

Python 基礎語法匯總

Python 語法 │ ├── 基本結構 │ ├── 語句&#xff08;Statements&#xff09; │ │ ├── 表達式語句&#xff08;如賦值、算術運算&#xff09; │ │ ├── 控制流語句&#xff08;if, for, while&#xff09; │ │ ├── 定義語句&#xff08;def…

一文詳解ffmpeg環境搭建:Ubuntu系統ffmpeg配置nvidia硬件加速

在Ubuntu系統下安裝FFmpeg有多種方式,其中最常用的是通過apt-get命令和源碼編譯安裝。本文將分別介紹這兩種方式,并提供安裝過程。 一、apt-get安裝 使用apt-get命令安裝FFmpeg是最簡單快捷的方式,只需要在終端中輸入以下命令即可: # 更新軟件包列表 sudo apt-get updat…

Android 14 、15動態申請讀寫權限實現 (Java)

在 Android 14、15 中&#xff0c;Google 進一步優化了存儲權限系統&#xff0c;特別是寫權限的管理。以下是完整的 Java 實現方案&#xff1a; 1. AndroidManifest.xml 聲明權限 <!-- Android 14 存儲權限 --> <uses-permission android:name"android.permiss…

小剛說C語言刷題——第23講 字符數組

前面&#xff0c;我們學習了一維數組和二維數組的概念。今天我們學習一種特殊的數組&#xff0c;字符數組。 1.字符數組的概念 字符數組就是指元素類型為字符的數組。字符數組是用來存放字符序列或者字符串的。 2.字符數組的定義及語法 char ch[5]; 3.字符數組的初始化及賦…

用AI生成系統架構圖

DeepSeek+Drawio+SVG繪制架構圖-找到一種真正可行實用的方法和思路 1、使用DeepSeek生成SVG文件,導入drawio工具的方法 ?? 問題根源分析 錯誤現象: ? 導入時報錯包含 data:image/SVG;base64 和 %20 等 URL 編碼字符 ? 代碼被錯誤轉換為 Base64 格式(適用于網頁嵌入,但…

免費干凈!付費軟件的平替款!

今天給大家分享一款超棒的電腦錄屏軟件&#xff0c;簡直不要太好用&#xff01;它的界面特別干凈&#xff0c;沒有一點兒廣告&#xff0c;看起來特別清爽。 電腦錄屏 無廣告的錄屏軟件 這個軟件超方便&#xff0c;根本不用安裝&#xff0c;打開就能直接用。 它功能也很強大&am…