#go 关于包的问题#

发布时间:2022-08-19 12:54

1:导入本地包
情况:有两个包不在同一个目录下,这个时候该怎么解决
本地的包没有发布到远程,这个情况的解决方法如下
使用replace语法,举例子:
我们现在有文件目录结构如下
 ├── p1
│   ├── go.mod
│   └── main.go
└── p2
    ├── go.mod
    └── p2.go

p1/main.go中想要导入p2.go中定义的函数
p2/go.mod内容如下:
module  liugong.com/addx/p2

go 1.14

p1/main.go中按如下方式导入

import (
    "fmt"
    "liugong.com/addx/p2"
)
func main() {
    p2.New()
    fmt.Println("main")
}
因为我并没有把liugong.com/addx/p2这个包上传到liugong.com这个网站,只是想导入本地的包,这个时候就需要用到replace这个指令了。

p1/go.mod内容如下:
module liugong.com/q1mi/p1

go 1.14

require "liugong.com/addx/p2" v0.0.0
replace "liugong.com/addx/p2" => "../p2"
 

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号