--go-grpc_out: server/api/user/user_grpc.pb.go: unparsable Go source: 13:4: illegal UTF-8 encodin...

首先说一下版本

文档日期:20201022

grpc:v1.32.0

protoc: libprotoc 3.9.0

protoc-gen-go: v1.25.0

protoc-gen-go-grpc:v1.0

ps:查看protoc系列的版本命令终端执行 protoc --version

正文

sh中执行的命令如果执行成功则终端打印ok 反之则fail

执行结果如下

搜了一圈没有搜索到答案,好吧自己分析吧。

提示--go-grpc_out大范围说明是生成grpc文件的时候出错了,再往下瞧说illegal UTF-8 encoding问题,能想到什么问题?

1.编码问题

2.有中文

ok顺着这两个思路我查看user.proto文件,发现确实有中文......


然后我把中文去掉注释去掉,再次编译执行,结果就OK了


然后我再次尝试发现service上面的注释中有中文是没问题的,在rpc上方的注释中有中文是会报错的


而改成如下的方式则不会出现此问题


另外也提交了issues感兴趣去可以看看:

https://github.com/grpc/grpc-go/issues/3977

总结:

哎心累,这种低级错误真的很致命浪费时间。

一个用golang的牛马。

完~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容