使用 go.mod 创建和使用本地模块(go 1.15)

我想在我的libGo.go. 我为解决我的问题而关注的所有主题都是将我的文件夹推送到 GitHub 和我的go.mod使用行require github.com/pseudo/project中。最后信息我没有把我的项目放在我的GOPATH.


建筑学:


.

├── go.mod

├── libGo

│   └── libGo.go

└── main.go

libGo.go


package libGo


import "fmt";


func Hello() {

    fmt.Println("Hello");

}


func Calcule(x, y int) int {

    return (x + y);

}

main.go


package main;


import (

    "fmt"


    "example.com/libGo/libGo"

);


func main()  {

    fmt.Println("I'm main function");

    libGo.Hello()

}

去.mod


module example.com/libGo/libGo


go 1.15


错误信息:


package command-line-arguments

    imports example.com/libGo/libGo

    imports example.com/libGo/libGo: import cycle not allowed

我是 Golang 的初学者,所以如果你能用一个例子向我解释一下为什么我所做的事情不起作用,我将不胜感激。


小怪兽爱吃肉
浏览 156回答 1
1回答

阿晨1998

你的模块被调用example.com/libGo并且这个模块中的包被调用libGo。因此,完整的包名将是example.com/libGo/libGo.您需要调整导入或模块名称。调整导入时example.com/libGo/libGo,模块名称必须保留example.com/libGo。当你将模块名称调整为 时example.com,导入名称必须保持不变example.com/libGo。将包名称添加到这两个名称会使您处于与以前相同的情况。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go