Golang:生成核心失败:无法加载 github.com

我安装了 golang 并开始使用本教程:https ://www.howtographql.com/graphql-go/1-getting-started/


当我运行时:


go run github.com/99designs/gqlgen generate 

我得到:


reloading module info

generating core failed: unable to load github.com/my-user/hackernews/graph/model - make sure you're using an import path to a package that exists

exit status 1

我的设置有什么问题?这是我的gopath


/Users/my-pc-user/go


BIG阳
浏览 103回答 1
1回答

蝴蝶刀刀

$ cd your_project_path/$ print '// +build tools\npackage tools\nimport _ "github.com/99designs/gqlgen"' | gofmt > ./tools.go$ echo 'package model' | gofmt > ./graph/model/doc.go$ go get .解释根据快速入门指南,您应该使用生成的代码创建一个包,该代码实际上已经由您的服务器导入:package mainimport (    "log"    "net/http"    "os"    "github.com/99designs/gqlgen/graphql/handler"    "github.com/99designs/gqlgen/graphql/playground"    "your_module_name/graph"    "your_module_name/graph/generated")由于your_module_name/graph/generated没有*.go文件,您无法启动服务器,如果您尝试,您将收到如下错误:graph/schema.resolvers.go:10:2: no required module provides package your_module_name/graph/generated; to add it:要生成该包,您需要执行go run github.com/99designs/gqlgen generate,但还有另一个问题:gqlgen生成使用另一个仍然不存在的包的代码,即your_module_name/graph/model.需要额外的步骤添加build约束以indirect在生成过程中不删除依赖项。这就是为什么有下划线 import的第一步。如果您使用指令将任何*.go文件放入该目录- 现在一切正常:package$ cd your_project_path/$ print '// +build tools\npackage tools\nimport _ "github.com/99designs/gqlgen"' | gofmt > ./tools.go$ echo 'package model' | gofmt > ./graph/model/doc.go$ go get .
打开App,查看更多内容
随时随地看视频慕课网APP