我正在尝试从 ModelT 包中获取一个函数到我的 Controllers 包中。我看过 Call a function from another package in Go 上的例子但是它不起作用。这是我的简单代码
package ModelT
-- Print.go
func PrintMe() string {
return "hello"
}
package Controllers
-- Circle.go
import ("Yislyapp/ModelT") -- This does not work
func Circle_List() {
ModelT.PrintMe()
}
我的小程序不会编译说:can not resolve directory yislyapp。即使我将它更改为 Yisly-Backend/ModelT 或 Yisly-Backend./ModelT ,我也会得到同样的结果,它似乎找不到包。自从我开始以来,任何建议都会很棒。如果我把它放到我的 Go 文件 Home.go 中,它就可以工作了
import (
"./ModelT"
)
func main() {
ModelT.PrintMe() -- This works in my Home.go file
}
最佳答案
您应该将 GOPATH
环境变量设置为 Go 项目的根目录。你的源代码应该在 $GOPATH/src
下的某个地方。包的导入路径是包目录相对于 $GOPATH/src
的路径。参见 https://golang.org/doc/code.html了解更多信息。
关于go - 如何从不同的包中调用包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49291595/