Go包管理

本地项目管理

Go 项目结构如下

├─GoPackage
│  ├─A
│  │  │  go.mod
│  │  │  main.go
│  │  │
│  │  └─B
│  │          B.go
│  │
│  └─C
│          C.go
│          go.mod

其中,A,B,C为文件夹名称,A与C同级,B在A中,现在要做的即在A的main.go中调用B与C文件夹中的包。
B文件夹下内容为

//B.go
package B

import "fmt"

func Do() {
	fmt.Println("B is doing something...")
}

C文件夹下的内容

//go.mod
module C

go 1.17


//C.go
package C

import "fmt"

func Run() {
	fmt.Println("C is runing...")
}

要想实现如上所述的调用,则A文件夹下的内容为

//go.mod 
module A

go 1.17


require GoPackage/C v0.0.0
replace GoPackage/C => ../C


//main.go
package main

import (
	"A/B"
	"GoPackage/C"
)

func main() {
	B.Do()
	C.Run()
}

远程包管理

【挖个坑】

参考

posted @ 2022-02-18 14:50  hichens  阅读(60)  评论(0编辑  收藏  举报