如何使用Go模块修复Go构建错误“无法加载包”?

时间:2019-07-01 16:29:07

标签: go go-modules go-build

我正在使用带有this tutorial的Go模块来建立一个新项目,然后尝试构建它。

该模块位于$ GOPATH外部的文件夹中,其结构如下:

example.com
├── my-project
├── ├── main
├── ├── ├── main.go
├── ├── go.mod

我已经在目录go mod init example.com/my-project中运行example.com/my-project,并创建了上面显示的go.mod文件。

main.go具有基本内容:

package main

import (
"fmt"
)
func main(){
 fmt.Println("Hello, world!")
}

尝试在目录go build中运行example.com/my-project后,我收到以下错误消息:

can't load package: package example.com/my-project: unknown import path "example.com/my-project": cannot find module providing package example.com/my-project

我还尝试在go build之外的目录/中运行example.com/my-project,但得到类似的失败结果:

can't load package: package .: no Go files in ...

我可能在一些基本问题上做错了,因此感谢您的耐心配合和提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

不需要目录main, 只需将main.go和go.mod移至example.com/my-project即可。

项目根目录应类似于:

.
├── go.mod
└── main.go