/usr/local/go/src/go get -u golang.org/x/vgoimport ( "github.com/julienschmidt/httprouter" )vgo buildmain.go:8:2: cannot find package "github.com/julienschmidt/httprouter" in any of: /usr/local/go/src/github.com/julienschmidt/httprouter (from $GOROOT) /Users/myuser/go/src/github.com/julienschmidt/httprouter (from $GOPATH)
我明白这个错误,它似乎在寻找在GOPATH或GOROOT下的httprouter。那么,我还需要做什么才能让vgo完成它的工作,并且可以成功地运行我的服务器吗?
发布于 2018-06-12 14:03:33
使用vgo build
这里是一个使用vgo的"Hello,World“演练,包括常见的错误以及如何响应它们。
$ go get -u golang.org/x/vgo$ cd /tmp/hello # Outside of GOPATH.$ cat main.go
包主导入"fmt“func main() { fmt.Println("Hello,World") }$ vgo build
无法确定模块根;请在那里创建一个go.mod文件go.mod文件来表示这是模块根目录:
$ touch go.mod$ vgo build。
vgo:无法确定源目录/tmp/hello的模块路径(在GOPATH之外,没有导入注释)1. Add a `module` statement to `go.mod`.
2. Add an `import` comment to our package.现在我们将使用选项2,然后回到选项1。将main.go的第一行改为:
包main // import "my/import/path/hello“
$ vgo build。$ ./hello
你好,世界注意:go.mod现在包含一个module行(上面的选项1):
$ cat go.mod
module my/import/path/hello如果您在您的GOPATH,中,那么步骤5中的错误不应该发生-- vgo build应该自动确定您在中,并相应地添加module行。
使用vgo run (不使用vgo build)
对于本例,让我们使用来自hello.go的巡回演出(vgo)
$ go get -u golang.org/x/vgo$ mkdir /tmp/hello2$ curl -sS https://swtch.com/hello.go >hello.go$ vgo run hello.go
无法确定模块根;请在那里创建一个go.mod文件$ touch go.mod$ vgo run hello.go
vgo:解析导入“rsc.io/”vgo:查找rsc.io/(最新) vgo: vgo rsc.io/ v1.5.2 Hello,world。https://stackoverflow.com/questions/50803978
复制相似问题