On 2016-12-02 22:31, Ian Lance Taylor wrote:
On Fri, Dec 2, 2016 at 11:24 AM, gd <d...@veryhaha.com> wrote:
It looks, for the official compiler, if the main package is under GOPATH,
then the order is:
1. the vendor folder
2. the standard packages
3. GOPATH folder
If the main package is outsides of GOPATH, then the order is:
1. the standard packages
2. GOPATH folder
the local vendor folder is totally ignored.
I don't know if this is the well defined behaviour or not.
You can see the defined behavior by running `go help gopath`. That
will tell you the search path when using the go tool.
Maybe I read the help text wrong, but it doesn't really answer the above
question does it?
In general it seems using "go build" in the project dir ignores the
vendor folder if the project dir is not under "src" in the GOPATH. Even
if there's code in the project dir and a vendor folder.
So... assuming this (and GOPATH=$PWD):
$ tree
.
├── main.go
├── src
│ └── myapp -> ..
└── vendor
├── github.com
│ └── pkg
│ └── errors
│ ├── appveyor.yml
│ ├── bench_test.go
│ ├── errors.go
│ ├── errors_test.go
│ ├── example_test.go
│ ├── format_test.go
│ ├── LICENSE
│ ├── README.md
│ ├── stack.go
│ └── stack_test.go
└── manifest
Executing "go build" in the top directory ignores the vendor folder.
But exexuting "go build myapp" works and includes the vendor folder.
/Peter
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.