[英]Create and use local module with 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 的初学者,所以如果你能用一个例子向我解释为什么我所做的不起作用,我将不胜感激。
主题阅读(第一个回答,46 票): 访问 go 模块中的本地包(go 1.11)
您的模块名为example.com/libGo
,该模块中的包名为libGo
。 因此,完整的包名称将是example.com/libGo/libGo
。
您需要调整导入或模块名称。 当您将导入调整为example.com/libGo/libGo
,模块名称必须保留为example.com/libGo
。 当您将模块名称调整为example.com
,导入名称必须保持为example.com/libGo
。 将包名称添加到这两个名称会使您处于与以前相同的情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.