commons.httpclient-3.X.jar 和 httpclient-4.x.jar是个什么关系?

最近看项目的代码,看到工程中有两个jar包张的很像,一个是commons.httpclient-3.1.jar,一个是httpclient4.2.1.jar,很纳闷,并且这两个包里都有HttpClient这个类,可是包名却不同,而后就查找了一番资料,看下这两个包究竟是个什么关系。apache

在httpclient4.2.1.jar的pom文件中的依赖以下:code

 

能够看得出,这个jar包是依赖了httpcore,commons-logging,commons-codec这三个jar包。而在commons-httpclient.jar包在使用过程当中,须要依赖commons-logging.jar和commons-codec.jar,这个httpclient4.2.1.jar就至关于集合了之前的commons-httpclient,commons-logging,commons-codec,这三个jar包,减小了繁琐的导入jar包的过程,如今只需导入一个httpclient.jar就能够使用了。cli

除此之外,在apache的官网上下载httpclient的jar包时,会发现它是在一个叫HttpComponent的项目下,这个HttpComponent是apache的顶级项目。而之前的commons的那三个包都是commons的项目下。在HttpComponent的网页上,看到了这样的文字: HttpComponents Client is a successor of and replacement for Commons HttpClient 3.x. Users of Commons HttpClient are strongly encouraged to upgrade.sso

也就是说commons下的commons-httpclient不在更新和维护了,用commons-httpclient的用户也建议更新到httpclient这个包。httpclient

相关文章
相关标签/搜索