如何从不同的包调用包

时间:2018-03-15 04:28:16

标签: go

我正在尝试从 ModelT 包中获取一个函数到我的控制器包中。我查看了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()
}

我的小程序不会编译说:无法解析目录yislyapp 。即使我将其更改为 Yisly-Backend / ModelT Yisly-Backend./ModelT ,我也会得到同样的东西,似乎无法找到该包。自从我开始以来,任何建议都会很棒。如果我将它放入我的Go文件Home.go,那么它可以正常工作

import (

    "./ModelT"
)
func main() {

         ModelT.PrintMe() -- This works in my Home.go file
    }

enter image description here

1 个答案:

答案 0 :(得分:4)

您应该将GOPATH环境变量设置为Go项目的根目录。您的源代码应该在$GOPATH/src之下。包的导入路径是包的目录相对于$GOPATH/src的路径。有关详细信息,请参阅https://golang.org/doc/code.html