protoc-gen-go: unable to determine Go import path for “*.proto“问题解决
异常问题
在 proto 文件夹下执行如下命令:
protoc --go_out=plugins=grpc:. *.proto
或如下命令:
protoc --go_out=. *.proto
控制台输出如下异常信息:
rotoc-gen-go: unable to determine Go import path for "test.proto" Please specify either: • a "go_package" option in the .proto source file, or • a "M" argument on the command line. See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information. --go_out: protoc-gen-go: Plugin failed with status code 1.
解决方案
方案一:在.proto中指定option go_package属性
# 指定包名的位置改成: option go_package = "./";
修改完毕,重新执行即可,当然也可以是相对的上级路径,如:
option go_package = "../param";
方案二:降低版本。按照官方使用protobuf 1.3.2,proto文件中不需要写 option go_package这个选项。
提示以上错误可以通过将protoc-gen-go
版本降至v1.3.2及以下解决:
go get -u github.com/golang/protobuf/protoc-gen-go@v1.3.2
关注公众号:程序新视界,一个让你软实力、硬技术同步提升的平台
除非注明,否则均为程序新视界原创文章,转载必须以链接形式标明本文链接