簡體   English   中英

將Apache httpcomponents從4.1.x升級到4.3.x

[英]Upgrade Apache httpcomponents from 4.1.x to 4.3.x

我當前的Java項目有點舊,正在使用4.1.x版的Apache httpcomponents jar。

現在,我想在我的項目中引入一些新功能,這些新功能應該使用4.3.x版本。

我的問題是如何將httpcomponents升級到新版本,並確保不經歷整個項目就不會破壞舊代碼。 (該項目很大,很多地方取決於舊版本)。

誰能提供有關httpcomponents API如何隨時間變化的想法?

HC 4.x的所有GA版本都應完全向后兼容。 一個人應該能夠在不破壞現有代碼(*)的情況下將4.3替換為4.1。 同時,不推薦使用的代碼往往要經過更嚴格的回歸測試,因此通常建議在升級后遷移到不推薦使用的功能。

(*)在4.2 GA中已刪除了4.0 GA 之前不建議使用的某些代碼

最好的辦法是進行一些良好的單元和集成測試,以解決所有集成問題。 您還應該查看發行說明 ,看看您是否依賴這些次要版本更改之間已更改的任何行為。 您應該檢查幾個標題為“不兼容的更改”的部分,以查看是否依賴那里的行為。

例如,在版本4.2下

不兼容的更改


[與發行版4.1.4比較]

以下方法已被棄用一段時間,並已刪除:

org.apache.http.impl.SocketHttpServerConnection#createHttpDataReceiver(Socket,int,HttpParams)org.apache.http.impl.SocketHttpServerConnection#createHttpDataTransmitter(Socket,int,HttpParams)org.apache.http.protocol.HttpRequestHandlerRegistry#matchUriRequestPattern(String,串)

以下類已經過時了一段時間,已被刪除:

org.apache.http.nio.entity.ByteArrayNIOEntity org.apache.http.nio.entity.FileNIOEntity org.apache.http.nio.entity.HttpNIOEntity org.apache.http.nio.entity.StringNIOEntity org.apache.http。 nio.protocol.NHttpClientHandlerBase org.apache.http.nio.protocol.NHttpServiceHandlerBase

由於這只是次要版本,我相信該項目遵循語義版本控制 ,因此只能以向后兼容的方式添加功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM