我正在关注教程,我想我可能错过了一些东西。我有一个 Go 项目位于:/Users/just_me/development/testing/golang/example_server内容是: main.gopackage mainimport "fmt"func main() { fmt.Println("hi world")}我有一个~/go目录。go env 显示:GOPATH="/Users/just_me/go"GOROOT="/usr/local/Cellar/go/1.12.9/libexec"我在 VSCode 中安装了建议的软件包。当我保存我的main.go我得到:Not able to determine import path of current package by using cwd: /Users/just_me/development/testing/golang/example_server and Go workspace: /Users/just_me/development/testing/golang/example_server>我该如何解决?
2 回答
蛊毒传说
TA贡献1895条经验 获得超3个赞
由于您的包位于 之外$GOPATH,因此您可能需要创建一个模块文件。
您需要使用以下命令来初始化您的 go 模块
go mod init your.import/path
将导入路径更改为您喜欢的路径。通过这种方式,您可以显式设置导入路径,这可能有助于修复它。
生成的go.mod文件如下所示:
module your.import/path
go 1.14 // Your go version
因此,如果该go.mod文件与文件位于同一目录中main.go,您现在可以从中导入子模块:
例如main.go:
package main
import (
"your.import/path/somepackage" // Import package from a subdirectory. This only works if `go.mod` has been created as above
)
func main() {
somepackage.SomeMethod()
}
并在somepackage/whatever.go:
package somepackage
import "fmt"
func SomeMethod() {
fmt.Println("Success!")
}
慕姐8265434
TA贡献1813条经验 获得超2个赞
如果您使用的是 vs code,请检查 go 和 code runner 扩展是否启用,如果启用,请尝试禁用并再次启用,如果没有,请安装并启用,并下载所有请求的包。
- 2 回答
- 0 关注
- 134 浏览
添加回答
举报
0/150
提交
取消