【发布时间】:2018-08-16 02:28:44
【问题描述】:
我只想在记录某些内容时从字符串中解析一个实例,而不关心结果。
但是当我将 protobuf 更新到 3.5.0 时,烦人的消息总是打印到终端(stderr):
“无法解析类型的消息,因为它缺少必填字段”
它的字段必须是必需的。
如何停止打印错误信息?
【问题讨论】:
标签: protocol-buffers protobuf-c protobuf-3
我只想在记录某些内容时从字符串中解析一个实例,而不关心结果。
但是当我将 protobuf 更新到 3.5.0 时,烦人的消息总是打印到终端(stderr):
“无法解析类型的消息,因为它缺少必填字段”
它的字段必须是必需的。
如何停止打印错误信息?
【问题讨论】:
标签: protocol-buffers protobuf-c protobuf-3
选项:
optional 而不是required
stderr并发送给nul
【讨论】:
据我所知,protobuf 库本身并不直接打印到 stderr。相反,错误消息通过 API 返回,例如message->InitializationErrorString()。
看来是您自己的代码将此消息打印到 stderr,或者您可能启用了某些调试模式。
您可以尝试将调试器挂钩添加到打印以查看它的来源。
【讨论】: