登录
首页 >  Golang >  Go问答

导入本地 Go 模块

来源:stackoverflow

时间:2024-03-03 10:33:27 253浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《导入本地 Go 模块》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

我正在尝试进行本地导入,但失败了。

我的环境是:

echo $gopath /家/彼得/去 回显 $goroot /usr/local/go

入口点是:

/home/peter/go/src/projects/pkgs1/main.go

导入的文件是:

/home/peter/go/src/projects/pkgs2/stuff.go

main.go

package main

import (
    "fmt"
    "projects/pkgs2"  // <- this does not resolve
)

func main(){
    fmt.println("123")
    pkgs2.x()
}

stuff.go

package pkgs2

import "fmt"

func X(){
    fmt.Println("X")
}

有什么关于我做错了什么的指示吗?


解决方案


您的导入路径是正确的,应该可以成功解析,但正如所写,您的程序将无法编译,因为未使用导入并且没有名为 x 的本地函数。

正如 mkopriva 所提到的,pkgs2 中的 x 函数未导出,并且在尝试在主包中使用它时您尚未对其进行限定。

要导出函数,函数需要以大写字母开头。

要在其他包中使用该函数,需要在函数名前加上包名。

main.go

package main

import (
    "fmt"
    "projects/pkgs2"
)

func main(){
    fmt.println("123")
    pkgs2.x()
}

stuff.go

package pkgs2

import "fmt"

func X(){
    fmt.Println("X")
}

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>