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:Gosrcstack (from $GOROOT) $GOPATHsrcstack (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语言中,对指向数组的指针进行取值操作可以通过以下几种方式实现。假设我们有一个指向数组的指针,我们可以使用数组指针来访问数组的元素,或者通过解引用操作符来获取整个数组。下面是一个详细的示例和解释:package main import "fmt" func main() { // 声明并初始化一个数组 arr := [3]int{1, 2, 3} // 获取数组的指针 arrPtr := &arr // 方法1:通过数组指针直接访问数组元素 fm
golang框架在高并发场景下的性能调优策略?
进程结束时,信号量是如何自动释放的?
Flutter在Debian上运行体验如何
如何对涉及数据库交互的 Golang 函数进行单元测试?
Debian用Flutter实现跨平台开发指南