解決Springboot獲取不到nacos配置中心的配置問題
記錄一下Springboot獲取不到nacos配置中心的配置問題
由于項目使用的nacos老版本,存在風險bug, 需要將nacos升級至2.2.1及以上版本,版本升級完畢之后 啟動項目發(fā)現(xiàn)項目開始報錯,提示dynamic-datasource can not find primary datasource
但是我明明在nacos中已經(jīng)配置了數(shù)據(jù)源,還會出現(xiàn)這樣的問題, 下意識覺得可能是沒有讀取到nacos的配置文件
nacos配置中心主要是在這個NacosConfigService的這個類下面。該接口下面主要有一些獲取配置,發(fā)布配置,增加監(jiān)聽器,刪除配置,刪除監(jiān)聽器等操作
首先在NacosPropertySourceBuilder下的loadNacosData方法中打上斷點發(fā)現(xiàn)this.configService.getConfig返回的data為空, 側(cè)面證明了確實沒有讀取到nacos中的配置信息
通過getConfig這個方法向下追蹤,在NacosConfigService的getConfigInner方法里面,就是具體的拉取配置的實現(xiàn),nacos首先是通過LocalConfigInfoProcessor.getFailover的方法獲取本地的配置, 當本地配置返回空時才會去獲取nacos客戶端的配置,而this.worker.getServerConfig這個方法,就是進行獲取遠端的配置信息, 通過斷點發(fā)現(xiàn)response的返回也是空的,那么我繼續(xù)下沉追蹤到getServerConfig中
下沉到queryConfig方法時發(fā)現(xiàn)了問題,通過ConfigQueryRequest.build方法生成的ConfigQueryRequest請求, 在返回時竟然返回ErrorCode:300, message 為 config data not exist, 這就是表示我傳遞三個參數(shù), dataId, group, tenant 出現(xiàn)了問題
再回去nacos中反復(fù)檢查確定dataId和group沒問題的情況下, 那么就只剩下最后一個出現(xiàn)問題的參數(shù)了,那就是tenant, 在項目的配置文件bootstrap-dev.yml中, namespace輸入的是命名空間的名稱,而非命名空間的id,導入項目獲取失敗
最終通過修改namespace的值改名字為id, 成功啟動, 問題不大,還是因為對nacos的掌握不熟練而導致的
以上就是解決Springboot獲取不到nacos配置中心的配置問題的詳細內(nèi)容,更多關(guān)于Springboot獲取不到nacos配置的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Spring注解驅(qū)動之關(guān)于@Bean注解指定初始化和銷毀的方法
這篇文章主要介紹了Spring注解驅(qū)動之關(guān)于@Bean注解指定初始化和銷毀的方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09java多線程編程必備volatile與synchronized深入理解
這篇文章主要介紹了java多線程編程必備volatile與synchronized的深入理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04Spring事件監(jiān)聽器@EventListener與publishEvent的使用
Spring可以通過事件監(jiān)聽器機制來處理應(yīng)用程序中的事件,本文主要介紹了Spring事件監(jiān)聽器@EventListener與publishEvent的使用,具有一定的參考價值,感興趣的可以了解一下2024-06-06關(guān)于java入門與java開發(fā)環(huán)境配置詳細教程
這篇文章主要介紹了關(guān)于java入門與java開發(fā)環(huán)境配置詳細教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03spring aop實現(xiàn)用戶權(quán)限管理的示例
本篇文章主要介紹了spring aop實現(xiàn)用戶權(quán)限管理的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-12-12SpringBoot?Web項目增刪改查入門實戰(zhàn)案例
這篇文章主要給大家介紹了關(guān)于SpringBoot?Web項目增刪改查入門實戰(zhàn)的相關(guān)資料,文中詳細介紹了如何實現(xiàn)新增、刪除、修改和查詢員工的功能,并使用統(tǒng)一響應(yīng)結(jié)果進行前后端交互,需要的朋友可以參考下2024-11-11