登录
首页 >  Golang >  Go问答

如何使用“go mod”在不同目录中管理代码依赖?

来源:stackoverflow

时间:2024-03-13 15:54:32 390浏览 收藏

有志者,事竟成!如果你在学习Golang,那么本文《如何使用“go mod”在不同目录中管理代码依赖?》,就很适合你!文章讲解的知识点主要包括,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

问题内容

我的源目录布局如下

mywork/liba
mywork/liba/liba.go
mywork/liba/go.mod
mywork/progb
mywork/progb/go.mod
mywork/progb/progb.go
  • 在 mywork/liba/ 目录中,输入 go mod init example.com/mywork/liba
  • 在 mywork/progb/ 目录中,输入 go mod init example.com/mywork/progb

liba/liba.go

package liba
func hi() string {      return "hi" }

liba/go.mod

module example.com/mywork/liba

go 1.13

progb/progb.go

package main
import "example.com/mywork/liba"
func main() { println("progb:", liba.hi()) }

progb/go.mod

module example.com/mywork/progb

go 1.13

liba目录下的go build是可以运行的。但是 go buildprogb 中失败并显示

构建 example.com/mywork/progb:无法加载 example.com/mywork/liba:找不到提供包 example.com/mywork/liba 的模块

如何纠正?


解决方案


progb/go.mod应该在https://github.com/golang/go/wiki/Modules#can-i-work-entirely-outside-of-vcs-on-my-local-filesystem中添加require和replace语句

module example.com/mywork/progb

require example.com/mywork/liba v0.0.0

replace example.com/mywork/liba => ../libA

go 1.13

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>