问题是,我为版本锁分叉了依赖库,并将其推送到一个私有库(github.com/shubhamgholave/packages/)。然后创建了一个go.mod,上面给出了相同的github链接(github.com/shubhamgholave/packages)。
在main.go导入部分,我说了import "github.com/shubhamgholave/packages/slacker
或slack(因为所有必需的依赖项都在slacker,slack,WebSocket等包中)。但是当我尝试go get github.com/shubhamgholave/packages
或go get github.com/shubhamgholave/package/slacker
或go mod tidy
时,它一直给我错误。
我尝试使用go mod tidy
和go mod edit -replace="original/repo=custom_preivate_repo@version"
以及go get github.com/shubhamgholave/packages/slacker
和相同的命令直到包。
1条答案
按热度按时间l7mqbcuq1#
问题是我分叉了版本锁的依赖存储库,并将其推入私有存储库
如果需要版本锁,你可以依靠Go工具链来完成。请参见校验和数据库。
如果要确保用于构建的所有文件都存储在单个文件树中,则应使用Vendoring。
您的方法确实有效,因为模块有自己的
go.mod
文件,该文件定义了模块的导入路径。将go.mod
文件放在根目录中不会改变这一事实。