導航:首頁 > 源碼編譯 > dubbox編譯報錯

dubbox編譯報錯

發布時間:2025-04-10 08:45:40

❶ bbo報錯qos-server...Address already in use

報錯日誌如下:

問題原因是多個服務在該伺服器內運行,兩個服務的qos-server配置埠號一致,啟動時提示被佔用,修改其一埠號並重啟。

qos是bbo的在線運維命令,bbo2.5.8新版本重構了telnet模塊,提供了新的telnet命令支持,新版本的telnet埠與bbo協議的埠是不同的埠,默認為22222。
qos埠沖突並影響服務消費者消費服務,但是每次程序啟動總是拋出埠沖突異常

❷ 關於升級 Dubbo 版本到 2.6.5 後啟動失敗的「坑」

Dubbo 從低版本升級到 2.6.5 版本後,啟動失敗,報錯如下:

<b><font color='red'>上終極方案:使用 2.6.2 以下版本或者 2.7.0 以上版本的 bbo ;</font></b>

具體解決方式需要根據項目的情況解決,提供一些其他方案:

刪除 web.xml 中如下的配置:

Spring Boot 工程沒有特別好的解決方案,提供兩個解決思路:

這個方案也沒有繞過添加 web.xml 的命運,做法如下:

觀察報錯日誌,報錯位置很明顯是 Spring 框架初始化時的報錯,重點是: there is already a root application 。

這個錯誤拋出位置余汪返位於: Spring-web 包的 ContextLoader 類的 initWebApplicationContext 方法。

原因很明顯, ContextLoader 被調用了至少兩遍,第二遍報錯導致項目初始化失敗,其主要的「罪魁禍首」是 bbo 包下面的 web-fragment.xml 。

Servlet 3.0 是隨著 Java EE 6 規范發布的,主要新增特性:

支持 Servlet 3.0 規范的容器,在啟動後會掃描工程的 jar 包,找到符合規范的 添加了相關註解的類 和 web-fragment.xml 然後跟 web.xml 的配置合並作為整個項目的初始化配置。

上述問題的發生原因很明顯了:

這個是 Servlet 3.0 提供的一個屬性,等同一個開關,設置為 true 則表示 web.xml 已經提供了全部的配置信息,不需要容器再去各個 jar 包找配置了陵罩,換句話就是:關閉 可插特性 ;

這個屬性是 注釋裡面提供的解決思路。這個屬性可以理解為指定 web-fragment.xml 的載入順序,和 ordering 標簽的區別是, absolute-ordering 僅僅針對我們指定的 web-fragment.xml 做排序。

輕易升級一個基礎框架不是一個好的做法豎飢,<b>升級基礎框架還是應該關注下當前版本和目標升級版本,框架作者做了些什麼事情,出現過什麼BUG。</b>

當前的 Spring Boot 的解決方案並不讓人滿意,畢竟 Spring Boot 的無Xml的感覺還是很爽的,為了這個升級引入了 web.xml 會有一點點不爽。

閱讀全文

與dubbox編譯報錯相關的資料

熱點內容
三台伺服器配置IP地址 瀏覽:171
如何用命令方塊連續對話 瀏覽:275
win7linux共享文件夾 瀏覽:302
命令符打開本地服務 瀏覽:597
android應用程序源碼 瀏覽:699
安卓開發工程師簡歷怎麼寫 瀏覽:57
熱水器水量伺服器是什麼意思 瀏覽:115
stk衛星編譯 瀏覽:478
對後台程序員的要求 瀏覽:759
ios大文件夾圖標 瀏覽:624
生的計劃pdf 瀏覽:711
oppoa93加密便簽在哪查找 瀏覽:21
兩個數字的加減乘除運算編程 瀏覽:227
給手機加密碼忘記了怎麼辦 瀏覽:601
單片機運算符 瀏覽:297
移動端微信商城源碼 瀏覽:443
編程貓下一個背景在哪裡 瀏覽:359
javaclasstype 瀏覽:240
樂高編程和樂高課的延伸 瀏覽:357
蘋果手機怎麼切換app美國賬號 瀏覽:865