Указать компилятору protobuf путь к googleapis

Как указать компилятору protobuf путь к файлу google/api/annotations.proto или как правильно установить https://github.com/googleapis/googleapis/tree/master/google/api? Данный код:

import "google/api/annotations.proto";

Вызывает следующую ошибку:

 Import "google/api/annotations.proto" was not found or had errors

Компилирую при помощи команды:

protoc -I $MYPATH/github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options -I . --grpc-gateway_out . \
    --grpc-gateway_opt logtostderr=true \
    --grpc-gateway_opt paths=source_relative \
    service.proto

Ответы (1 шт):

Автор решения: Andrey Mironov

Вам необходимо загрузить проект, либо с помощью команды:

go install github.com/googleapis/googleapis@latest

, либо с помощью:

git clone https://github.com/googleapis/googleapis

Далее необходимо указать путь до загруженного проекта. Например, я скачал с помощью git clone в ту же директорию, где лежит мой service.proto.

protoc -I googleapis/ -I . --grpc-gateway_out . \
--grpc-gateway_opt logtostderr=true \
--grpc-gateway_opt paths=source_relative \
service.proto

То же самое, если вы загрузили с помощью go get:

protoc -I $GOPATH/pkg/mod/github.com/googleapis/googleapis@<version>/ -I . --grpc-gateway_out . \
--grpc-gateway_opt logtostderr=true \
--grpc-gateway_opt paths=source_relative \
service.proto

Предполагаю, что вы пытаетесь развернуть reverse proxy. Возможно вам поможет инструкция по генерации

→ Ссылка