可能有几件事情出错了。我将提供以下设置。
检查您的 GOPATH 环境变量
GOPATH 变量定义您的工作区。如果您输入“go env”,您可以轻松识别当前值。
如果您在 Windows 下安装 Go,GOPATH 环境变量会在安装过程中自动设置。尽管如此:这个默认路径可能不是您的首选。您可以安全地将此变量设置为您希望的目标目录。
要更改 Windows 中的环境变量,请查看此处:https://www.architectryan.com/2018/08/31/how-to-change-environment-variables-on-windows-10/
检查工作区布局
如果您已经决定了工作区的位置并设置了 GOPATH 环境变量,您应该在工作区中创建三个文件夹:
src、pkg、bin
文件夹“src”是您的源代码所在的位置。 “pkg”包括外部进口。 "bin" 包含已编译的源代码。
示例项目
在您的工作区中布局:
<workspace directory>
--> src
--> oopexpertutil
--> x.go
--> y.go
--> pkg
--> ...
--> bin
--> ...
文件“x.go”
package oopexpertutil
func checkMe(e error) {
if e != nil {
panic(e)
}
}
文件“y.go”
package main
import (
"fmt"
"io/ioutil"
"oopexpertutil"
)
func main() {
var data string = "Hello World!"
var dataAsBytes = []byte(data)
fmt.Println(data)
err := ioutil.WriteFile("hello_world.txt", dataAsBytes, 0644)
fmt.Println(err)
oopexpertutil.checkMe(err)
}
失望...
此设置仍然无效。您可能已经尝试过所有其他坚持工作区或包布局或“go modules”主题的答案。完成这项工作需要考虑的最后一点是:
将引用包的“checkMe”函数名称改为“CheckMe”并更新用法...
Go 有一些约定,可以从 未导出的函数 中识别 导出的函数 以大写字母开头。