华域联盟 Golang 解决go build不去vendor下查找包的问题

解决go build不去vendor下查找包的问题

go build 报错:

main.go:5:2: cannot find package “gopkg.in/go-playground/validator.v9” in any of:

/usr/local/go/src/gopkg.in/go-playground/validator.v9 (from $GOROOT)

/root/work/testjdcloud/src/gopkg.in/go-playground/validator.v9 (from $GOPATH)

但是为什么没有去vendor下找呢?

确认了下,是目录结构的问题,可以查找vendor的目录结构是

test|
|src|
| |test|
| | |main.go
| | |vendor

也就是说,需要在src下面再有一层目录

补充:go build cannot find package 问题

问题描述

使用go build 编译*.go 程序是找不到package。

窗口信息如下:

$GOPATH>go build stacker.go
stacker.go:18:2: cannot find package “stack” in any of:
D:\Go\src\stack (from $GOROOT)
$GOPATH\src\stack (from $GOPATH)
$GOPATH>go version
go version go1.11.2 windows/amd64

解决问题思路

感觉应该是GOPATH环境变量没有设置对。

问题分析

go build 提示在src stack 目录下找不到相应到库文件。

stacker.go的package内容大致如下

package main
import (
 "fmt"
 "stacker/stack"
 "strings"
)

所以尝试修改$GOPATH为src同级目录,再使用go build stacker.go 编译就可以正常找到相应的stack package.

问题总结

go 编译器默认会在当前目录中查找src目录下package。如果没有src目录,编译器就找不到相应的package。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持华域联盟。如有错误或未考虑完全的地方,望不吝赐教。

本文由 华域联盟 原创撰写:华域联盟 » 解决go build不去vendor下查找包的问题

转载请保留出处和原文链接:https://www.cnhackhy.com/110953.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

goland设置控制台折叠效果

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们