执行命令后,生成的代码报错了

执行命令后,生成的代码报错了

老师您好,运行gen.sh文件好像没有权限,然后我直接用老师的这行命令:

protoc -I=. --grpc-gateway_out=paths=source_relative,grpc_api_configuration=trip.yaml:gen/go trip.proto

他把相应的文件编译出来了

https://img1.sycdn.imooc.com//climg/622090bd0952857904720794.jpg

但是,都报错了:pb.gw.go文件中的是这样的:



https://img1.sycdn.imooc.com//climg/62209126097d9e4f21061534.jpg

这里是哪一个模块没有导入嘛?


然后就是go.mod:d

https://img1.sycdn.imooc.com//climg/6220916d099d635617940982.jpg



https://img1.sycdn.imooc.com//climg/622091cd0978b45417940982.jpg


我根据他的提示将:

 go get github.com/golang/protobuf/descriptor@v1.5.0

 go get github.com/golang/protobuf/proto@v1.5.0


仍然不行,不知道这两个问题怎么解决?



正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
ccmouse 2022-03-03 19:16:04

打了go get命令go.mod文件的内容改变了吗?或者试试把它说的两个依赖手动添加到go.mod试试。

另外,go mod tidy有又可能有帮助。

还有我们可以在命令行运行一下,我们的程序,看看是不是报相同的错,以排除ide的问题。

  • 提问者 慕移动9586716 #1

    通过 go get命令go.mod没有改变,然后我把他提示的两个依赖手动添加到go.mod中后:

    https://img1.sycdn.imooc.com//climg/6220a8b709537a1612700794.jpg

    然后trip.b.gw.go就没有报错了,但是go.mod中还是有问题:


    https://img1.sycdn.imooc.com//climg/6220a9ed09f4c6f216420794.jpg

    这个不知道怎么处理,

    这里有快速修复:

    但是还是不行:

    1:

    https://img1.sycdn.imooc.com//climg/6220ab0209c00af721741524.jpg

    2:

    https://img1.sycdn.imooc.com//climg/6220ab0f0979663521741524.jpg

    弄不懂!





    2022-03-03 19:49:09
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师