今天使用Netty写一个WebSocket的服务端,在网上找源码发现,同样是Netty框架,怎么会出现两个版本的代码?一个风格使用了SimpleChannelInboundHandler的messageReceived 方法,而另一个风格却没有使用。检查了下自己的代码,显然也无法重写messageReceived方法,到官网netty寻找,也没发现我的netty版本也是最新的。

目前官网的版本是:

WX20190911-235621@2x.png

而且还很新,8月13号发布的,还不到一个月呢。

笔者去github上找了一下相关的框架,同样发现一个大神使用了messageReceived方法,但是项目确实3年前提交的代码。难道代码会传说?回头查看了该工程的pom.xml依赖后发现大神使用的是5.0.0(alpha1)版本。

莫非3年前就发布了5.0.0alpha1版本? 渠道maven仓库版本找到了真相。

8542ED5F977EBF1F99B70F07CC436D22.jpg

原来3年前确实开了一个5.0的分支,然后这个分支也发布了,见上图。

所以,真相就是5.0版本以后的SimpleChannelInboundHandler 实现了一个messageReceived方法,这之前的版本并没有。不过不用担心,比较了相关代码,其实底层逻辑都是一样的。只不过名字具体化了,毕竟messageReceived 比 channelRead0 方法易懂啊!!!!!

相关阅读,下面贴出一些历史版本,以便备查。

VersionRepositoryUsagesDate
5.0.x5.0.0.Alpha2Central31Mar, 2015
5.0.0.Alpha1Central15Dec, 2013
4.1.x4.1.39.FinalCentral18Aug, 2019
4.1.38.FinalCentral18Jul, 2019
4.1.37.FinalCentral17Jun, 2019
4.1.36.FinalCentral47Apr, 2019
4.1.35.FinalCentral7Apr, 2019
4.1.34.FinalCentral49Mar, 2019
4.1.33.FinalCentral25Jan, 2019
4.1.32.FinalCentral71Nov, 2018
4.1.31.FinalCentral39Oct, 2018
4.1.30.FinalCentral54Sep, 2018
4.1.29.FinalCentral40Aug, 2018
4.1.28.FinalCentral19Jul, 2018
4.1.27.FinalCentral21Jul, 2018
4.1.26.FinalCentral6Jul, 2018
4.1.25.FinalCentral74May, 2018
4.1.24.FinalCentral48Apr, 2018
4.1.23.FinalCentral10Apr, 2018
4.1.22.FinalCentral55Feb, 2018
4.1.21.FinalCentral27Feb, 2018
4.1.20.FinalCentral19Jan, 2018
4.1.19.FinalCentral26Dec, 2017
4.1.18.FinalCentral4Dec, 2017
4.1.17.FinalCentral56Nov, 2017
4.1.16.FinalCentral84Sep, 2017
4.1.15.FinalCentral49Aug, 2017
4.1.14.FinalCentral24Aug, 2017
4.1.13.FinalCentral24Jul, 2017
4.1.12.FinalCentral35Jun, 2017
4.1.11.FinalCentral23May, 2017
4.1.10.FinalCentral8Apr, 2017
4.1.9.FinalCentral70Mar, 2017
4.1.8.FinalCentral50Jan, 2017
4.1.7.FinalCentral18Jan, 2017
4.1.6.FinalCentral95Oct, 2016
4.1.5.FinalCentral75Aug, 2016
4.1.4.FinalCentral37Jul, 2016
4.1.3.FinalCentral9Jul, 2016
4.1.2.FinalCentral7Jul, 2016
4.1.1.FinalCentral21Jun, 2016
4.1.0.FinalCentral18May, 2016
4.1.0.CR7Central15Apr, 2016
4.1.0.CR6Central2Apr, 2016
4.1.0.CR5Central4Mar, 2016
4.1.0.CR4Central 0 Mar, 2016
4.1.0.CR3Central11Feb, 2016
4.1.0.CR2Central2Feb, 2016
4.1.0.CR1Central2Jan, 2016
4.1.0.Beta8Central6Nov, 2015
4.1.0.Beta7Central6Oct, 2015
4.1.0.Beta6Central3Sep, 2015
4.1.0.Beta5Central16May, 2015
4.1.0.Beta4Central5Mar, 2015
4.1.0.Beta3Central10Aug, 2014
4.1.0.Beta2Central 0 Aug, 2014
4.1.0.Beta1Central2Jul, 2014
4.0.x4.0.56.FinalCentral18Feb, 2018
4.0.55.FinalCentral 0 Jan, 2018
4.0.54.FinalCentral3Dec, 2017
4.0.53.FinalCentral7Nov, 2017
4.0.52.FinalCentral18Sep, 2017
4.0.51.FinalCentral6Aug, 2017
4.0.50.FinalCentral7Aug, 2017
4.0.49.FinalCentral2Jul, 2017
4.0.48.FinalCentral 0 Jun, 2017
4.0.47.FinalCentral2May, 2017
4.0.46.FinalCentral13Apr, 2017
4.0.45.FinalCentral5Mar, 2017
4.0.44.FinalCentral13Jan, 2017
4.0.43.FinalCentral9Jan, 2017
4.0.42.FinalCentral16Oct, 2016
4.0.41.FinalCentral9Aug, 2016
4.0.40.FinalCentral15Jul, 2016
4.0.39.FinalCentral20Jul, 2016
4.0.38.FinalCentral3Jul, 2016
4.0.37.FinalCentral20Jun, 2016
4.0.36.FinalCentral47Apr, 2016
4.0.35.FinalCentral17Mar, 2016
4.0.34.FinalCentral31Jan, 2016
4.0.33.FinalCentral80Nov, 2015
4.0.32.FinalCentral34Sep, 2015
4.0.31.FinalCentral16Sep, 2015
4.0.30.FinalCentral36Jul, 2015
4.0.29.FinalCentral45Jun, 2015
4.0.28.FinalCentral42May, 2015
4.0.27.FinalCentral25Apr, 2015
4.0.26.FinalCentral34Mar, 2015
4.0.25.FinalCentral40Dec, 2014
4.0.24.FinalCentral32Oct, 2014
4.0.23.FinalCentral96Aug, 2014
4.0.22.FinalCentral 0 Aug, 2014
4.0.21.FinalCentral39Jul, 2014
4.0.20.FinalCentral50Jun, 2014
4.0.19.FinalCentral30Apr, 2014
4.0.18.FinalCentral13Apr, 2014
4.0.17.FinalCentral23Feb, 2014
4.0.16.FinalCentral1Feb, 2014
4.0.15.FinalCentral22Jan, 2014
4.0.14.FinalCentral8Dec, 2013
4.0.14.Beta1Central 0 Nov, 2013
4.0.13.FinalCentral24Nov, 2013
4.0.12.FinalCentral16Nov, 2013
4.0.11.FinalCentral7Oct, 2013
4.0.10.FinalCentral10Oct, 2013
4.0.9.FinalCentral19Sep, 2013
4.0.8.FinalCentral4Aug, 2013
4.0.7.FinalCentral10Aug, 2013
4.0.6.FinalCentral7Aug, 2013
4.0.5.FinalCentral1Jul, 2013
4.0.4.FinalCentral14Jul, 2013
4.0.3.FinalCentral1Jul, 2013
4.0.2.FinalCentral4Jul, 2013
4.0.1.FinalCentral1Jul, 2013
4.0.0.FinalCentral1Jul, 2013
4.0.0.CR9Central1Jul, 2013
4.0.0.CR8Central 0 Jul, 2013
4.0.0.CR7Central1Jun, 2013
4.0.0.CR6Central3Jun, 2013
4.0.0.CR5Central2Jun, 2013
4.0.0.CR4Central 0 Jun, 2013
4.0.0.CR3Central2May, 2013
4.0.0.CR2Central1May, 2013
4.0.0.CR1Central4Mar, 2013
4.0.0.Beta3Central2Mar, 2013
4.0.0.Beta2Central3Feb, 2013
4.0.0.Beta1Central2Feb, 2013