今天下载了seata的源码,导入idea的时候,发现居然报错了。我刚开始以为缺少代码,所以很傻逼的在群里问了下。
不过群里也没人回答我咯,后来我直接全局搜索了下AbstractBranchEndRequestProto,找到了下面的内容:
好吧,现在就猜呗,刚开始搜素proto后来搜索AbstractBranchEndRequestProto.proto。慢慢的就引入protobuf
这下终于找到目标了。
先介绍一下这个玩意:
Protocal Buffers(简称protobuf)是谷歌的一项技术,用于结构化的数据序列化、反序列化,常用于RPC 系统(Remote Procedure Call Protocol System)和持续数据存储系统。
其类似于XML生成和解析,但protobuf的效率高于XML,不过protobuf生成的是字节码,可读性比XML差,类似的还有json、Java的Serializable等。
很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。
idea安装protobuf Support
我这里是安装之后的结果。然后再打开之后.proto文件就会看到我上面的截图的样子了。
编译
这样我们熟知的Java代码终于出来,代码也不报错了,越学发现自己知道的越无知。