Где установить путь к протоколу для импорта стандартов протокола буферов - PullRequest
0 голосов
/ 17 февраля 2019

Где мне нужно установить path на protoc, чтобы получить стандарты импорта буферов протокола (protobuf), например empty.proto и timestamp.proto в Windows и Dart?

Когда protoc выполняется:

protoc --dart_out = grpc: lib / src / protos / Генерируемый\ AppData \ Roaming \ Pub \ Cache \ bin \ protoc-gen-dart.bat

Отображается следующая ошибка :

google /protobuf / empty.proto: файл не найден.organization.proto: Импорт "google / protobuf / empty.proto" не найден или возникли ошибки.organization.proto: 14: 27: "google.protobuf.Empty" не определено.

В IntelliJ Settings на плагине Protobuf Support path определяет, где стандартные протос (*.прото):

enter image description here

Дополнительно это path определено в IntelliJ для Project Structure \ Global Libraries:

enter image description here

Код organization.proto, который импортирует google/protobuf/empty.proto для использования Empty класс:

syntax = "proto3";

package auge.protobuf;

import "google/protobuf/empty.proto";

service OrganizationService {

    rpc GetOrganizations (google.protobuf.Empty) returns (OrganizationsResponse) {}
}

Анализатор IntelliJ распознает import "google/protobuf/empty.proto" и Empty класс по IDEA, но protoc не удается найти.

Среда:

  • SO: Windows 7 x64
  • protoc: libprotoc 3.6.1
  • Дротик: 2.2.0-грань
...