如何从不同的包调用包

问题描述 投票:0回答:1

我试图从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()
}

我的小程序也不会编译说:无法解析目录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

go
1个回答
4
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.