После обновления protolib и protoc gRPC больше не работает

Вчера мой Ubuntu сделал обновление (из журнала) Grpc для PHP

Командная строка: aptdaemon role='role-commit-packages' sender=':1.567' Обновление: libprotoc-dev:amd64 (3.5.0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), libprotoc15:amd64 (3.5.0-0~maarten0+ хитрый, 3.5.0.1-0 ~ maarten0 + хитрый), gnome-software-plugin-snap:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), gnome-программное обеспечение:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), google-chrome-stable:amd64 (62.0.3202.94-1, 63.0.3239.84-1), protobuf-компилятор: amd64 (3.5.0-0 ~ maarten0 + artful, 3.5.0.1-0 ~ maarten0 + artful), программное обеспечение ubuntu:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), libprotobuf-lite15:amd64 (3.5.0-0~maarten0+artful, 3.5.0.1-0~maarten0+artful), gnome-software-plugin-flatpak:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1), libprotobuf15:amd64 (3.5.0-0~maarten0+ хитрый, 3.5.0.1-0 ~ maarten0 + хитрый), libprotobuf-dev:amd64 (3.5.0-0~maarten0+ хитрый, 3.5.0.1-0 ~ maarten0 + хитрый), гном -software-common:amd64 (3.26.1-0ubuntu2, 3.26.1-0ubuntu2.17.10.1)

и после перезагрузки я не могу сделать какой-либо запрос Grpc, у меня действительно есть расширение =grpc.so в моем файле php.ini, и тот же код работал вчера, я также попытался обновить его в своем файле композитора, также попытался переустановить Grpc как воссоздать классы из моего файла прото. По какой-то причине это просто не будет работать.

Я всегда получаю один и тот же ответ

сообщение: "класс" Grpc\ChannelCredentials "не найден"

есть идеи как это исправить (или что пошло не так)?

РЕДАКТИРОВАТЬ: я использую докер для локального сервера - возможно ли, что две разные версии сталкиваются сейчас?

2 ответа

Это действительно странно, потому что на основе вашего журнала, только обновление protobuf с 3.5.0 до 3.5.0.1 и обновление программного обеспечения gnome. Кажется, они не сломают GRPC. Я установил эти пакеты, а затем установил grpc-1.7.0 и protobuf-3.5.0.1 с помощью команды "sudo pecl install grpc (protobuf)", но они хорошо работают.

Ошибка "Класс" Grpc \ ChannelCredentials "не найден", скорее всего, означает, что расширение grpc.so загружено неправильно. Мы должны найти, где проблема. Вы можете попробовать

На всякий случай, если у кого-то возникла похожая проблема Решение моей проблемы было внутри докера. По какой-то причине моя установка grpc была потеряна

Я исправил это, подключившись к docker bash и снова установив grpc с помощью

pecl установить grpc

и прочитал расширения = grpc.so в моем файле php.ini

РЕДАКТИРОВАТЬ: та же проблема происходит каждый раз, когда я меняю antyhing в docker-compose.yaml

Другие вопросы по тегам