win10下protoc-gen-go不是内外部命令的方案

win10下protoc-gen-go不是内外部命令的方案,第1张

问题

windows下使用go-micro测试时需要安装protobuf并生成go版的proto,但是在生成的时候提示错误:

'protoc-gen-go' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
--go_out: protoc-gen-go: Plugin failed with status code 1.
解决方案

网上找到的方案有两种,并且我都进行了测试

方案一(实测好像没作用,不知道是不是因为windows的版本问题,未确定,但确实没作用)

进入vscode的terminal或者进入系统cmd的GUI界面运行命运go -env获取GOPATH的路径

进入系统环境变量(右键电脑进入属性,然后点击环境变量就可以进入到设置系统变量的界面)

把第一步获得的GOPATH添加到系统变量的Path里面(我这里新开了一个变量并引用到Path里面,如果直接放到Path里面会提示”此环境变量太大,此对话框允许将值设置为最长2047个字符“)

设置完之后直接运行你的protoc指令去生成go版的proto 方案二(实测可行,实在太高兴了终于OK了) 首先下载一下protobuf的源码git clone https://github.com/golang/protobuf
进入protobuf/protoc-gen-go目录并进入到cmd中

输入go build go build -o protoc-gen-go.exe main.go ,生成protoc-gen-go.exe文件
生成的文件放到c盘的windows/System32目录下
再去运行你的protoc指令就可以了(图里的是我自己的)

.

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/995765.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存