go module导入本地包

不在同一个项目下
目录结构

 导入包

这个时候,mypackage也需要进行module初始化,即拥有一个属于自己的go.mod文件,内容如下:

module mypackage
go 1.14
然后我们在moduledemo/main.go中按如下方式导入:

package main


import (
  "fmt"
  "mypackage"
)

func main() {
  mypackage.New()
  fmt.Println("main")
}

因为这两个包不在同一个项目路径下,你想要导入本地包,并且这些包也没有发布到远程的github或其他代码仓库地址。这个时候我们就需要在go.mod文件中使用replace指令。

在调用方也就是packagedemo/go.mod中按如下方式指定使用相对路径来寻找mypackage这个包。

module moduledemo
go 1.14

require "mypackage" v0.0.0

replace "mypackage" => "../mypackage"



posted @ 2020-04-08 11:32  small_lei_it  阅读(916)  评论(0编辑  收藏  举报