请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

widow下 安装 protoc-3.11.2-win64.zip 编译出现问题

D:worksrcilestore-server>protoc --proto_path=service/account/proto --go_out=
service/account/proto --micro_out=service/account/proto service/account/proto/us
er.proto
’protoc-gen-go’ 不是内部或外部命令也不是可运行的程序
或批处理文件。
–go_out: protoc-gen-go: Plugin failed with status code 1.

安装了
D:\work\src\filestore-server>go get -u github.com/golang/protobuf/protoc-gen-go

D:\work\src\filestore-server>protoc --proto_path=service/account/proto --go_out=
service/account/proto --micro_out=service/account/proto service/account/proto/us
er.proto
’protoc-gen-micro’ 不是内部或外部命令也不是可运行的程序
或批处理文件。
–micro_out: protoc-gen-micro: Plugin failed with status code 1.

正在回答

4回答

关于可能碰到的这个问题:

Missing 'go_package' option in "user.proto",
please specify it with the full Go package path as
a future release of protoc-gen-go will require this be specified.

先参考下以下相关链接,看是否能够解决问题哈:

https://stackoverflow.com/questions/61666805/correct-format-of-protoc-go-package
https://stackoverflow.com/questions/62048665/errors-compiling-google-fhir-proto-files-in-go

我本地暂时无法复现这个情况。

1 回复 有任何疑惑可以回复我~
  • 提问者 慕粉1494638 #1
    常见的错误
    D:\project\src\filestore-server\rpc\proto>protoc.exe --go_out=plugins=grpc:. helloworld.proto
    2020/06/16 21:25:29 WARNING: Missing 'go_package' option in "helloworld.proto",
    please specify it with the full Go package path as
    a future release of protoc-gen-go will require this be specified.
    See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.
    
    虽然Deprecated告警, 但生成的文件依然可以使用;
    
    解决方法:
    在helloworld.proto文件中添加语句 option go_package = ".;echo"; 就不会报错了。
    回复 有任何疑惑可以回复我~ 2020-06-16 21:45:26
  • xiaomo 回复 提问者 慕粉1494638 #2
    赞,学习了~~
    回复 有任何疑惑可以回复我~ 2020-06-19 00:36:05
  • 黄花菜不凉hhh 回复 提问者 慕粉1494638 #3
    确实可用,感谢大佬
    回复 有任何疑惑可以回复我~ 2020-06-20 09:56:02
xiaomo 2020-04-08 16:42:10

go get安装好后,找到protoc-gen-go.exe所在的目录(一般在$GOPATH/bin下), 然后把这个这个目录配置到系统环境PATH里。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕粉1494638 #1
    D:\project\src\filestore-server>protoc --proto_path=service/account/proto --go_out=service/account/proto --micro_out=service/account/proto service/account/proto/user.proto
    2020/06/14 22:14:53 WARNING: Missing 'go_package' option in "user.proto",
    please specify it with the full Go package path as
    a future release of protoc-gen-go will require this be specified.
    See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.
    
    
    报这种错误的原因?
    
    
    window的安装方法:
    1 https://github.com/protocolbuffers/protobuf/releases/ 下载 
    protoc-3.12.3-win64.zip
    D:/study/protoc/bin/protoc.exe 加入到系统环境PATH
    
    2 go get -u github.com/golang/protobuf/protoc-gen-go
    go get github.com/micro/go-web
    go get -v github.com/micro/protobuf/{proto,protoc-gen-go}
    go get -v github.com/micro/protoc-gen-micro
    
    将 D:/project/bin/proto-gen-go.exe加入到系统环境PATH
    回复 有任何疑惑可以回复我~ 2020-06-14 22:20:39
  • xiaomo 回复 提问者 慕粉1494638 #2
    可能是protoc版本的问题,我本地暂时没碰到类似的问题,目前不好验证。我搜索了相关的连接,可能这里有解决方案,具体可参考参考我最新的回答。
    回复 有任何疑惑可以回复我~ 2020-06-14 23:52:06
慕的地5972662 2020-03-15 18:49:00

同样的错 怎么处理的

0 回复 有任何疑惑可以回复我~
提问者 慕粉1494638 2020-01-05 10:41:08

少安装了什么

0 回复 有任何疑惑可以回复我~
  • xiaomo #1
    同学你好, 先试下把protoc-gen-go安装上, 比如:
    go get -u github.com/golang/protobuf/protoc-gen-go
    回复 有任何疑惑可以回复我~ 2020-01-06 00:16:31
  • Tt_Tao 回复 xiaomo #2
    安装了的
    回复 有任何疑惑可以回复我~ 2020-04-08 15:23:25
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信