ошибка типов в grpc
Всем привет Вот проблемный проект В фале cmd/server/main.go возникает ошибка:
cannot use srv (variable of type adder.GRPCServer) as pkgpb.AdderServer value in argument to pkgpb.RegisterAdderServer: missing method Add (Add has pointer receiver)compilerInvalidIfaceAssign
Я уже извелся искать почему она возникает и как ее решать. Вот здесь брал этот пример
Ответы (1 шт):
Решил проблему. У меня в дебиане 10 были подключены репозитории testing, установились непроверенные версии ПО, включая golang, potobuf-compiler и вообще всего софта. ТАк получилось что после обновления до debian 11, в sources.list остались репозитории подписанные для 10го дебиана и apt все время ругался на битые пакеты. Поэтому попытки откатить версии ПО были неудачными из раза в раз. Скачал debian 11 с оф сайта, установил, настроил рабочее окружение и написал код еще раз. Теперь все работает и даже больше, стал работать protoc-gen-go так как он должен работать через плагин grpc, раньше нужно было создавать 2 файла pb.go(но это уже другая история).
Наверно можно было решить это менее радикальным способом, но не хочется с этим возиться...
НИкому не рекомендую обновляться из репозиторя testing.