Reputation: 2977
Having the following Go project layout with shared library functions in lib
and several binaries in cmd
using these library functions and having external dependencies:
root
|
lib
cmd
|
binary1
|
main.go
binary2
|
main.go
...
Searching for a simple way to handle project dependencies with dep
tool. What is the expected usage pattern: having multiple Gopkg.*
files in each binaryX
directory or using a pair of Gopkg.toml
and Gopkg.lock
files for all these binaries? In the second case how would we compile these binaries knowing that vendor
directory will be in project root instead of binaryX
directories?
Upvotes: 1
Views: 349
Reputation: 11636
Normally, you'd just have a single root/vendor directory that all your various deps that are referenced by the lib
and cmd
code
When compiling, just do it like normal.
go install ./cmd/...
(or however you want to build)
Upvotes: 1