我想使用Golang电子邮件模板当我运行时goget-ugithub.com/matcornic/hermes/v2itreturnspackagegithub.com/matcornic/hermes/v2:cannotfindpackage"github.com/matcornic/hermes/v2"inanyof:/usr/local/go/src/github.com/matcornic/hermes/v2(from$GOROOT)/home/User/go/src/github.com/matcornic/hermes/v2(from$GOPATH)我的go变量GOPATH
我有一个用Golang编写的简单程序。它是一个API。所以在项目文件夹中,有一个名为cmd的文件夹,其中包含我的main包(用于初始化应用程序并定义API的端点)。还有一个以我的程序命名的文件夹,其中包含同样以我的程序命名的包中的多个文件。这个包作为执行所有必要查询的模型,并包含我定义的所有类型。我还创建了一个名为test的文件夹。它包含名为test的包下的所有测试文件。问题是要运行测试,我必须访问我的主包!有没有办法在Golang中做到这一点?我尝试简单地使用import"cmd/main"但当然它不起作用。我也有一个想法。也许我可以将所有初始化函数(在cmd文件夹中)移动到以我的程
tl;dr以前配置为使用GOPATH的repo现在配置为模块。一切都很好,越来越好。但是,protoc正确地(!)为在github.com/path/to/repo/protos结构中的repo中定义的protobufs生成Golang代码,而我现在更喜欢在我的源代码中生成这些代码,在GOPATH之外。我正在移动他们来解决这个问题。有更好的解决方案吗?我有一个GitHub存储库。为了方便讨论,我们称它为github.com/acme/toolbox。在子目录中,我有protobuf文件,其中包括:packageacme.toolbox.v1;optiongo_package="gith
我正在学习教程,我想我可能错过了一些东西。我有一个Go项目位于:/Users/just_me/development/testing/golang/example_server内容是:main.gopackagemainimport"fmt"funcmain(){fmt.Println("hiworld")}我有一个~/go目录。goenv显示:GOPATH="/Users/just_me/go"GOROOT="/usr/local/Cellar/go/1.12.9/libexec"我在VSCode中安装了建议的包。当我保存我的main.go时,我得到:Notabletodetermi
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭3年前。Improvethisquestion我有一个Go包,它在file1.go中声明和使用一些常量。现在我向包中添加一个新文件file2.go,它引用file1.go中的常量。您是否会将共享常量移动到一个新文件中,例如consts.go,因为它们不“属于”一个文件或另一个文件?还是将它们留在file1.go中并假设查看file2.go的人可以使用他们的IDE或编辑器或grep来定位共享常量?
尝试运行go测试代码并遇到此问题。它有这样的导入:"github.com/abcd/abcd"然后,当我运行它时,它找不到包。我注意到像这样导入github的东西是一种常见的做法。对我来说,正确的处理方式是什么?谢谢。 最佳答案 这应该在你的gopath中下载存储库mkdir-P$PWD/gopath/{bin,src,pkg}exportGOPATH=$PWD/gopath:$GOPATHgoget"github.com/abcd/abcd"lsgopath/src/github.com/abcd/abcd如果您告诉我们具体的存储
我正在尝试使用导入包供内部使用,但遇到了一些问题。我的目录结构如下所示:app/model/file1.gofile2.go...main.go当我尝试构建程序时,出现如下所示的错误:/usr/local/go/src/pkg/model(from$GOROOT)我希望能够在应用程序的任何其他程序中调用模型程序,只需使用:import"app/model"在执行此操作时,我有哪些选择? 最佳答案 你从GOPATH级别导入..你所有的包都应该放在那里。例如,假设您的应用程序在这里:$GOPATH/src/dtrinh100/app/.
在Golang的谷歌云上设置网络套接字,并导入在我的本地机器上运行良好的代码在云上不起作用。我有:import"github.com/influxdb/influxdb/client/v2"已经跑了goget"github.com/influxdb/influxdb/client/v2"在运行gorunserver.go时我得到:#command-line-arguments./pi_server.go:47:undefined:client.NewClient./pi_server.go:47:undefined:client.Config完整代码如下,不包括const声明和html
假设我有一个golang包,其中包含一些汇编代码:demopkg/source1.gosource2.goasm_amd64.s如果我尝试使用gobuild构建它,工具链将使用gotoolasm来组装*.s文件。但是如果我将Cgo添加到混合物中,通过将单个import"C"放入任何源代码,go将切换到gcc汇编程序。我可以通过执行gobuild-n看到它。第一种情况下对/usr/local/go/pkg/tool/linux_amd64/asm的调用被对gcc的调用所取代。除此之外,它开始提示语法错误。是否记录了此行为,以便我可以依靠它来维护我的包?我可以强制gobuild使用一个确切
我正在尝试在IntelliJ中以Debug模式启动文件。这是我的文件内容:packagemyPackageimport("fmt")funcmain(){fmt.Println("Hello")}我的文件在文件夹src/myProject/myPackage但是当我尝试在IntelliJ中创建Go应用程序时,它显示:"CannotfindGofilewithmainin'myProject/myPackage'"我已经完成了这项工作,但我必须将我的文件放在名为“main”的包中。但是现在我的项目正在增长,我需要单独调试我的包。有什么想法吗? 最佳答案