草庐IT

当前目录

全部标签

golang 在子目录中找不到包 gin

我收到以下错误消息:controllers/user.go:4:2:cannotfindpackage"(underscore)/home/ubuntu/goapi/src/github.com/roes/api/vendor/github.com/gin-gonic/gin"inanyof:/usr/local/go/src/(underscore)/home/ubuntu/goapi/src/github.com/roes/api/vendor/github.com/gin-gonic/gin(from$GOROOT)/home/ubuntu/goapi/src/_(undersc

go - monorepo 和自定义目录结构中的多个 Go 模块

我有2个可能相关的问题。我有一个测试monorepo设置,有2个子目录(mod1和mod2)。它们中的每一个都有一个go.mod文件,每个模块都有一个包含基本打印代码的.go文件。在mod2中有一个子目录mod2_lib(其中包含一个带有基本打印代码的简单.go文件),因为我阅读了Go模块基本上是他们自己的小GOPATH。我想从mod1调用包mod2/mod2_lib中的函数Run(),但我得到的只是构建github.com/account_name/test/mod1:找不到路径github.com/account_name/test/mod2/mod2_lib的模块。这是我用来解决

go - 删除目录和所有子目录

这是我尝试过的:packagemainimport("fmt""os/exec")funcmain(){fmt.Println("Removingbuilddirectory")iferr:=exec.Command("cmd","/S/Q","RD","c:\\build").Run();err!=nil{fmt.Printf("Errorremovingbuilddirectory:%s\n",err)}iferr:=exec.Command("cmd","/C","mkdir","c:\\build").Run();err!=nil{fmt.Printf("Errormaking

go - 从包的子目录引用包中的接口(interface)

有一个带有子目录(子包)的包,并且不能使用子包中包中定义的接口(interface)。所以,有包f1创建子目录f2在f1中定义一个接口(interface):---/f1/file1.go---packagef1typeMinerinterface{Foo()}funcTheFunction(mMiner){/*blah*/}在f2中创建一个结构,它应该是f1中接口(interface)的一部分:---/f1/f2/file2.go---packagef2typeMinestruct{iint}func(m*Mine)Foo(){/*blah*/}在另一个文件中,我尝试使用该包并创建M

unit-testing - 子目录的 golang 测试失败

在我的用例中,我正在设置一个单一的go测试,它运行项目文件夹中所有包中的所有_test.go。我尝试使用项目src文件夹中的$gotest./...实现此目的/project-name/src/mypack/dao/util当我尝试运行测试时,它要求安装在导入包中使用的包。例如,如果我导入“github.com/go-sql-driver/mysql”,它可能使用了另一个包github.com/golang/protobuf/proto。我没有手动导入proto包。该应用程序无需手动导入内包即可运行。但是当我运行测试时它失败了。但是单个包测试成功了。我是否必须手动安装$gotest./

go - 如何为用户提供创建的目录?

我如何为用户提供一个在服务器端创建的目录供他们下载?该目录不仅包含文件,还包含子目录。 最佳答案 这不是特定于Golang的问题或答案,但最好的解决方案是将文件夹压缩到存档中并让您的用户下载。 关于go-如何为用户提供创建的目录?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/37759462/

go - 中断当前的尾部并开始新的尾部

所以我在golang中创建了一些日志分析器,我需要的是新创建文件的实时tail-f。我正在使用tail包和fsnotify包,但我不太熟悉go中的channel和例程,所以我需要一些帮助。目前程序是这样的:packagemainimport("fmt""github.com/hpcloud/tail""strings""log""net/smtp""time""github.com/fsnotify/fsnotify")//thisfunctionneedstomonitorfornewfilesindirectoryfuncnewFileCheck()(newFilenamechan

设置表格以重定向到提交时的当前页面(SilverStripe/PHP)

我为SilverStripe站点有一个注册表单,该网站处理服务器端上的所有内容。最初,它只会在主页上,所以我工作的设置很好。但是随后的需求发生了变化,也需要出现在子页面上的表格。除了我为什么设置的内容,表格总是提交到主页外,一切仍然有效action范围。最初,action参数为“/家庭/提交”。我将其更改为接受一个变量,该变量返回当前页面URL并通过制作称为称为的函数来附加“/提交”Link(请参阅下面的代码)。这似乎有效,并将正确的URL放入action范围。但是,当您点击“提交”按钮时,该表格仍将用户发送回主页,这不是我想要的。我希望他们留在表单上的当前页面上(无论是主页还是任何子页面)。

file - FSNotify 在运行时添加监视目录

我真的不知道如何提出这个问题,但就是这样。我正在使用fsnotify来观察一些目录的变化,当一个文件发生变化时,我将变化同步到另一个目录。但我也想将新创建的目录添加到watch,但它并没有真正起作用。这是我的代码:funcWatcher(){watcher,err:=fsnotify.NewWatcher()deferwatcher.Close()done:=make(chanbool)gofunc(){for{select{caseevent:=函数比较长,但我删除了不重要的部分。一切正常,除了err=watcher.Add(dest)。如何让它观看更多的目录?

go - 为什么我的 GOPATH/src 刚安装后包含几个目录?

我刚刚在我的机器上安装了Golang,并设置了GOPATH。但是当我导航到我的go/src时,我看到src文件夹包含./sourcegraph.com、./golang.org和./github.com。另外GOPATH/bin和GOPATH/pkg也没有空。所以我有几个问题:1)我知道如何使用./github.com文件夹将我的代码推送到github,但为什么它包含box中的其他一些不是我的项目,例如acroca,cweil...和其他?我可以清除这个文件夹吗?2)我应该如何处理golang.org文件夹,我可以删除它吗?3)我应该如何处理sourcegraph.com文件夹,我可以