在eclipse中使用protobuf-dt插件进行序列化时遇到的问题
2018-02-09 15:40
726 查看
使用protobuf-dt插件比在命令行使用命令方便,但是这个插件的下载地址要翻墙,速度也不理想,所以我在资源里上传了一份,下载地址为:protobuf-dt ,这是一个zip包,安装方式以eclipse-4.4-luna-sr2为例,在eclipse菜单栏点击“Help"---->"Install New Software",弹出如下界面: 点击"Add"按钮,出现如下所示对话框: 点击"Archive"按钮,选择你刚才下载的zip包,然后在"Name"框里输入一个名字,点击"OK"后,过一会会在上一个窗口中出现一个插件选项,你勾选一下,点击下面的“Next"一路进行就安装成功了。 这里主要记录一下使用过程中遇到的问题,第一个问题是因为protobuf-dt插件可以配置为只要保存一次proto文件,插件就会编译一次,所以当我新建完proto文件后并保存后,eclipse控制台马上就有反应了:[command] D:\protobuf\bin\protoc.exe --proto_path=D:\project\第四章\demo_04\src --java_out=D:\project\第四章\demo_04\src-gen D:\project\第四章\demo_04\src\com\hjc\demo\pb\demo.proto[protoc] D:\project\第四章\demo_04\src: warning: directory does not exist.[protoc] D:\project\第四章\demo_04\src\com\hjc\demo\pb\demo.proto: No such file or directory 明明那些目录和文件都在,为什么还是报not exist呢,原因是我的路径中使用了中文,我改为英文后,这个错误消失了:
[command] D:\protobuf\bin\protoc.exe --proto_path=D:\project\master\four\demo_04\src --java_out=D:\project\master\four\demo_04\src-gen D:\project\master\four\demo_04\src\demo.proto[protoc] [libprotobuf WARNING google/protobuf/compiler/parser.cc:546] No syntax specified for the proto file: demo.proto. Please use 'syntax = "proto2";' or 'syntax = "proto3";' to specify a syntax version. (Defaulted to proto2 syntax.)出现了第二个错误,这是因为我protobuf的编译器protoc.exe使用的是3.5.0版本,估计是3.0和2.0版本语法有一些不同,所以使用高版本时,编译时就会提示你必须设置语法版本,所以我在proto文件第一行添加了使用语法proto2:
syntax = "proto2"; //要在第一行设置语法版本option java_outer_classname = "DemoProto";message Obj1 {required int32 val1 = 1;repeated Obj2 val2 = 2;}message Obj2 {required string subval1 = 1;optional double subval2 = 2;}最后编译成功了
相关文章推荐
- Eclipse 使用SVN插件遇到的一点小问题
- Unity使用protobuf-net进行二进制序列化与反序列化
- 我在Eclipse中使用Tomcat插件的遇到的一些问题
- Android下使用Protobuf进行序列化
- 在eclipse中配置好hadoop的插件后使用DFS遇到的问题
- C# 使用 protobuf 进行对象序列化与反序列化
- Beetle使用Protobuf.net进行对象序列化传输
- spring-data-redis 使用 protobuf进行序列化和反序列
- 我在Eclipse中使用Tomcat插件的遇到的一些问题
- 我在Eclipse中使用Tomcat插件的遇到的一些问题
- C#使用Protocol Buffer(ProtoBuf)进行对象的序列化与反序列化
- 【protobuf】 3.使用protobuf-csharp-port进行序列化和反序列化
- eclipse使用Hibernate tools反向工程插件遇到的几个问题
- 【Tips】关于Eclipse使用Maven插件遇到的问题
- Android下使用Protobuf进行序列化
- 使用eclipse+git插件开发android项目时遇到的问题及解决
- C#与Java通过protobuf进行网络通信过程中遇到的问题
- 使用protoBuf进行序列化和反序列化
- iOS开发中使用protobuf遇到的一些问题
- 我在Eclipse中使用Tomcat插件的遇到的一些问题