我正在努力奉献时间,并进一步了解Go。我目前最大的问题是项目的结构和建设。
我读过here,您现在可以将项目设置为不在GOPATH范围内,这很棒,因为它适合我和我在本地组织工作的公司的方式。
我在/src/go-learning
中建立了一个非常简单的项目结构:
├── cmd
│ └── hello
│ └── main.go
├── Dockerfile
├── go.mod
└── README.md
Go代码本身非常简单,我想添加依赖项只是为了更好地了解构建方式:
package main
import (
log "github.com/sirupsen/logrus"
uuid "github.com/google/uuid"
)
func main() {
log.Info("Hello, World! Request: " + uuid.New().String())
}
我的go.mod
文件如下:
module cmd/hello
go 1.12
但是,当我尝试运行 go build 时,出现此错误:
无法加载软件包:软件包cmd / hello:找不到软件包“。”在: / usr / local / go / src / cmd / hello
我确定这很愚蠢,但是我有以下问题:
/usr/local/bin
移到本地计算机上?快速更新:
有效的命令是go build -o TEST cmd/hello/main.go
,但这似乎不符合我正在阅读的内容。