我按照https://auth0.com/docs/server-platforms/golang中的步骤操作 并尝试在Windows 7机器上设置种子项目。
我有 ABLE 为以下内容做“go get”;
github.com/gorilla/mux, golang.org/x/oauth2,github.com/astaxie/beego/session,
get github.com/codegangsta/negroni
在我运行之后去安装我得到错误;
C:\Users\TestUser\Documents\go\auth0-golang-sample>go install
main.go:4:2: cannot find package "github.com/auth0/auth0-go/examples/regular-web-app/app" in any of: C:\Go\src\pkg\github.com\auth0\auth0-go\examples\regular-web-app\app (from $GOROOT)
C:\Users\TestUser\Documents\go\src\github.com\auth0\auth0-go\examples\regular-web-app\app (
from $GOPATH)
server.go:4:2: cannot find package "github.com/auth0/auth0-go/examples/regular-web-app/routes/callback" in any of: C:\Go\src\pkg\github.com\auth0\auth0-go\examples\regular-web-app\routes\callback (from $GOROOT)
.....
.....
当我尝试“go get github.com/auth0/auth0-go/”时,我收到以下错误
C:\Users\TestUser\Documents\go\auth0-golang-sample>go get github.com/auth0/auth0-go/
Username for 'https://github.com': user
Password for 'https://user@github.com':
# cd .; git clone https://github.com/auth0/auth0-go C:\Users\TestUser\Documents\go\src\github.com\a
uth0\auth0-go
Cloning into 'C:\Users\TestUser\Documents\go\src\github.com\auth0\auth0-go'...
remote: Repository not found.
fatal: repository 'https://github.com/auth0/auth0-go/' not found
package github.com/auth0/auth0-go: exit status 128
然而,当我尝试去获取github.com/auth0/auth0-golang /
C:\Users\TestUser\Documents\go\auth0-golang-sample>go get github.com/auth0/auth0-golang/
package github.com/auth0/auth0-golang
imports github.com/auth0/auth0-golang
imports github.com/auth0/auth0-golang: no buildable Go source files in C:\Users\TestUser\Documents\go\src\github.com\auth0\auth0-golang
中创建的文件/文件夹
C:\Users\TestUser\Documents\go\src\github.com\auth0\auth0-golang\
+--examples
+--go-api
--main.go
--README.md
+--regular-web-app
+--app
--app.go
+--public
--app.css
--app.js
+--routes
+--CALLBACK
+--home
+--middlewares
+--user
--templates.go
--main.go
--README.md
--server.go
--.gitignore
--README.md
以下是我的环境
set GOARCH=amd64
set GOBIN=C:\Users\TestUser\Documents\go\bin
set GOCHAR=6
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=C:\Users\TestUser\Documents\go
set GORACE=
set GOROOT=C:\Go
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set CC=gcc
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0
set CXX=g++
set CGO_ENABLED=1
我已被锁定这个问题好几天了,任何帮助都将不胜感激。
感谢@Vonc,我已经克服了最初的蜷缩。
现在go install
吐出此错误
# github.com/auth0/auth0-golang/examples/regular-web-app/routes/callback
..\src\github.com\auth0\auth0-golang\examples\regular-web-app\routes\callback\ca
llback.go:17: undefined: oauth2.New
..\src\github.com\auth0\auth0-golang\examples\regular-web-app\routes\callback\ca
llback.go:18: undefined: oauth2.Client
..\src\github.com\auth0\auth0-golang\examples\regular-web-app\routes\callback\ca
llback.go:19: undefined: oauth2.RedirectURL
我已经去了golang.org/x/oauth2' 和结果(简化)......
C:\Users\TestUser\Documents\go\
+--pkg
+--windows_amd64
+--golang.org
+--x
+--net
+--oauth2
--internal.a
--jws.a
--oauth2.a
+--src
+--golang.org
+--x
+--net
+--oauth2
我已经擦除所有并安装了1.4但我仍然错误 undefined oauth2.New,oauth2.Client等
我没有运气去获取github.com/golang/oauth2结果
can't load package: package github.com/golang/oauth2: code in directory C:\Users
\TestUser\Documents\go\src\github.com\golang\oauth2 expects import "golang.org/x/oauth2"
我真的陷入了泥潭
我刚刚找到了golang身份验证问题的答案,这是代码更改的结果link to code
答案 0 :(得分:6)
我刚刚更新了文档和Sample。
有2个错误:
1)包重命名 2)OAuth2包完全更改了其API,因此我已将其更新为按预期工作。
现在,您应该可以了解项目,或者只需将其下载到$GO_PATH/src/github.com/auth0
然后执行go get .
,go run main.go server.go
,它应该可以正常工作。
如果有,请告诉我!
答案 1 :(得分:2)
似乎已将repo从auth0/auth0-go
重命名为:auth0/auth0-golang
您可以在auth0/auth0-golang/examples/regular-web-app/main.go
中看到错误导入,并且应用包确实存在,但在auth0/auth0-golang/examples/regular-web-app/app/app.go
package main
import (
"github.com/auth0/auth0-go/examples/regular-web-app/app"
"github.com/joho/godotenv"
"log"
)
Pull Request将允许该repo修复错误的导入。
关于oauth错误:
# github.com/auth0/auth0-golang/examples/regular-web-app/routes/callback
..\src\github.com\auth0\auth0-golang\examples\regular-web-app\routes\callback\callback.go:17:
undefined: oauth2.New
go get golang.org/x/oauth2
还不够
go get github.com/golang/oauth2
应该更好地工作,正如OP所提到的那样,考虑到package change from net/yyy
to golang/x/yyyy
(见commit 9b6b761),它最近被修复了。