[英]build command-line-arguments: cannot load local package: cannot find module providing package
我无法使用 go mod 加载本地包。 我有 repoA 和 repoB 的单独 go.mod 文件。 我在任何地方都找不到解决方案。 操作系统是windows。
$> go version
go version go1.12.7 windows/amd64
当我从repoA运行主文件时,我有两个带有存储库的模块。 它会尝试找到repoB 的模块/包,然后它会抛出一个错误说
找不到提供包的模块
我的回购结构:-
����repoA
� ����proto
� � ����system
� ����sauth
� ����shandle
� ����smodel
� ����sresponse
����repoB
����common
����config
����proto
����account
����auth
����session
go.mod
文件repoA
看?
进口应始终是绝对的,例如:
import "github.com/Himanshu/repoB"
然后,在repoA
的go.mod
文件中,您可以添加replace
指令以将“github.com/Himanshu/repoB”指向本地路径(可能是相对的)。
请务必阅读Modules wiki的相关部分和关于模块的官方博客文章
做了几件事后,我的 IntelliJ 解决了这个问题。
我有 2 个文件夹 -> repoA 和 repoB,它们位于文件夹 c:\\goprograms 中。 运行go mod init examplegoprogram.com/app
。 现在,我在 goprograms 文件夹中看到 go.mod 文件,其中包含内容module examplegoprogram.com/app
。 在 repoA 中,您现在可以将 repoB 称为import "examplegoprogram.com/app/repoB"
如果您使用的是新的 Intellij Ultimate,请在项目设置下启用 go modules Alt + Ctrl + S
Languages & Frameworks -> Go -> Go Modules
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.