I am trying to get a project going with gRPC that has the servers written in golang and the clients written in node
I have a protobuf file structure like this
- $GOPATH/src/company/api
|- server
|- svc1
|- svc1.proto
|- svc2
|- svc2.proto
|- hardware
|- hardware1
|- hardware1.proto
|- hardware2
|- hardware2.proto
|- lib
|- used-by-both
|- used-by-both.proto
When defining a service that uses something in the lib directory, I use -I$GOPATH/src
then import using import "company/api/lib/used-by-both";
in the proto file and that seems to work for golang when I generate everything.
However, when I generate the node files, the import paths in the packages that depend on files from lib
to be incorrect when the while api
directory is installed as a node module
If I try to make the -I
option for the compiler more specific and shorten the import
statement, the golang package import gets messed up
Any advice on how best to compile these proto files in order to make use of them easliy as go packages and node modules?