Go:需要本地文件夹中的模块并替换

omqzjyyz  于 2022-12-25  发布在  Go
关注(0)|答案(1)|浏览(162)

我有:

      • 一个模块**(/Users/collimarco/Sites/pushpad-go
      • 使用该模块的演示应用程序**(/Users/collimarco/Sites/pushpad-example-app/go

它们位于两个单独的文件夹中,路径不同。
我需要遵循这种结构,因为许多其他语言也使用相同的约定。
这是模块

// /Users/collimarco/Sites/pushpad-go/go.mod

module github.com/pushpad/pushpad-go

go 1.19

这是需要使用该模块的演示应用程序
x一个一个一个一个x一个一个二个x
我读了不同的博客文章,这似乎是正确的方法。然而,我得到这个错误:

$ go run .
main.go:4:3: no required module provides package github.com/pushpad/pushpad-go/pushpad; to add it:
    go get github.com/pushpad/pushpad-go/pushpad

我不想从在线存储库下载该模块,错误提示如下:我只想从本地文件夹导入代码,怎么办?

qlvxas9a

qlvxas9a1#

你还需要一个require指令来获取模块,如果你在v0.0.0版本中获取它,replace指令会从你的本地文件夹中获取它,所以:

go get github.com/pushpad/pushpad-go/pushpad@0.0.0

应该把这个加到你的go.mod:

require (
    github.com/pushpad/pushpad-go/pushpad v0.0.0
)

另外,replace指令中不需要引号,应该是:

replace github.com/pushpad/pushpad-go v0.0.0 => /Users/collimarco/Sites/pushpad-go

相关问题