【发布时间】:2019-10-08 14:02:11
【问题描述】:
尝试运行由protoc 从一堆*.proto 文件生成的PHP 客户端代码。 PHP 代码在 php7.3 的 docker 容器上运行,并安装并启用了 GRPC 扩展:pecl/grpc is already installed and is the same as the released version 1.23.1。
当代码运行时,我收到以下错误:Class 'Grpc\BaseStub' not found。
错误是由这一行触发的:class ProductServiceClient extends \Grpc\BaseStub {。这是自动生成的代码中的一行,因此无法修改。
[编辑]
运行composer require grpc/grpc 解决了这个问题;但是,我现在有Class 'Google\Protobuf\Internal\Message' not found。
[编辑]
运行 composer require google/protobuf 解决了第二个问题。
【问题讨论】:
-
这个问题解决了吗?
-
@StanleyCheung oui,desole。我不想删除它,因为我认为它可能对其他人有帮助。
-
@chaseisabelle 你有机会用原生扩展而不是 composer 包来修复它吗?
-
@chaseisabelle 要解决第二个问题,您需要安装 protobuf 扩展
pecl install -f protobuf