#java #protocol-buffers
#java #протокол-буферы
Вопрос:
Я импортировал библиотеку, которая содержит классы, созданные protobuf.
Я хотел бы отправлять объекты этого класса как часть других сообщений protobuf. Но protoc
(очевидно?) жалуется на отсутствие определений:
Не удалось разрешить ссылку на тип ‘ExistingProtobufLibraryClass’.
Я мог бы, конечно, скопировать существующий .proto- источник из источника библиотеки, но тогда я подозреваю, что протокол сгенерирует две версии этого класса, что было бы довольно раздражающе.
Есть идеи, как это решить?
Комментарии:
1. Вы играли с различными параметрами «импорта» в protocol / .proto?
2. Да.. Я могу импортировать proto-def уже скомпилированного класса, и он работает. Если бы я мог только сказать protocol не генерировать для него код, этого было бы достаточно.
Ответ №1:
Вам необходимо импортировать существующий класс proto.
import "somepath/existing_protobuf_library_class.proto"
протокол не будет генерировать дополнительный код, сгенерированный Java-код просто импортирует предполагаемые другие классы.