我知道互联网上有类似的问题,我尝试了所有建议的解决方案,但至少2天都无法弄明白。
我尝试使用IntelliJ IDEA部署Little Go服务器,它运行良好,它可以构建/运行我的代码,但如果我使用终端作为示例:
go build ./...
我看到类似的东西:
OS-X-Dennis:backend denis$ go build ./...
out/production/mypocket_backend/server.go:4:2: cannot find package "api.jwt.auth/routers" in any of:
/usr/local/go/src/api.jwt.auth/routers (from $GOROOT)
/Users/denis/Programming/Golang/src/api.jwt.auth/routers (from $GOPATH)
OS X 10.11.2,IntelliJ IDEA 2016.1
$ GOPATH ="用户/ denis /编程/ Golang"
$ GOROOT =" / usr / local / go"
$ PATH =" $ PATH:$ GOPATH / bin"
这些路径是正确的吗?
这是我的工作结构:
/Golang/
.bin/
.pkg/
.darwin-amd64/
.//other folders/
.src/
.github.com/
.backend/ //project's source
/src
/api.jwt.auth/
//source code
.server.go - file with main func
//other files as example .gitignore
.//other folders//
我看到日志显示我的项目路径错误。
now
/Users/denis/Programming/Golang/src/api.jwt.auth/routers
should
/Users/denis/Programming/Golang/src/backend/src/api.jwt.auth/routers
我不知道应该在哪里纠正这条道路。
答案 0 :(得分:1)
您的GOPATH可以包含多个目录。
如果您真的希望backend
目录成为某些Go库的路径,除了现有的/Users/denis/Programming/Golang
路径外,您还可以将GOPATH设置为:/Users/denis/Programming/Golang:/Users/denis/Programming/Golang/src/backend
< / p>
这将导致import语句在/Users/denis/Programming/Golang/src
目录和/Users/denis/Programming/Golang/src/backend/src
目录中搜索源文件。
我个人建议将你的api.jwt.auth文件夹移动到/Users/denis/Programming/Golang/src/api.jwt.auth
以保持你的源代码在一个区域内,但是如上所述在你的GOPATH中有两个不同的目录也可以。
要更好地了解GOPATH,您只需输入go help gopath
即可。快速入门也是here