英文:
Golang Webapp Seed Set up fails
问题
我正在按照https://auth0.com/docs/server-platforms/golang中的步骤进行操作,并尝试在Windows 7上设置种子项目。
我已经成功执行了以下命令的"go get":
github.com/gorilla/mux, golang.org/x/oauth2,github.com/astaxie/beego/session,
get github.com/codegangsta/negroni
但是当我运行"go install"时,出现了以下错误:
C:\Users\TestUser\Documents\go\auth0-golang-sample>go install
main.go:4:2: 找不到包"github.com/auth0/auth0-go/examples/regular-web-app/app",在以下任何位置都找不到: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: 找不到包"github.com/auth0/auth0-go/examples/regular-web-app/routes/callback",在以下任何位置都找不到: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
然而,当我尝试"go get 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: 在C:\Users\TestUser\Documents\go\src\github.com\auth0\auth0-golang中没有可构建的Go源文件
在以下路径中创建了文件/文件夹:
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
以下是我的go env:
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
我已经执行了go get 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
我已经清理了所有内容并安装了go 1.4,但仍然出现错误undefined oauth2.New,oauth2.Client等。
我尝试了go get 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认证问题的答案,这是由于代码更改导致的代码链接
英文:
I am follow the steps in https://auth0.com/docs/server-platforms/golang
and trying to setup the seed project on a Windows 7 box .
I have ABLE to do "go get " for the following;
github.com/gorilla/mux, golang.org/x/oauth2,github.com/astaxie/beego/session,
get github.com/codegangsta/negroni
After these when i run go install i get the error;
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)
.....
.....
I get the error below when i try " 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
However when i try go get 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
The files/folders created however in
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
Below are my go env
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
I have been locked with this issue for days, any help will be much appreciated.
Thanks to @Vonc i've overcome initial huddle.
Now go install
spits this error
# 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
i have already `go get golang.org/x/oauth2'
and the result(simplified)...
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
I have scrubbed all and installed go 1.4 but i still error
undefined oauth2.New, oauth2.Client etc
I had no luck with go get github.com/golang/oauth2 result
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"
Am really stuck in a quagmire
I just found the answer to the golang auth issue, this is as a result of code changes link to code
答案1
得分: 6
我刚刚更新了文档和示例。
有两个错误:
1)包重命名
2)OAuth2包完全改变了其API,所以我已经更新了它以使其按预期工作。
现在,你应该能够通过go get项目,或者只需将其下载到$GO_PATH/src/github.com/auth0
,然后执行go get .
,go run main.go server.go
,它应该可以工作。
如果可以,请告诉我!
英文:
I've just updated the Docs and the Sample.
There were 2 errors:
- Package rename
- OAuth2 package completely changed its API so I've updated it to work as intended.
Now, you should be able to do a go get of the project, or just download it into $GO_PATH/src/github.com/auth0
and then do go get .
, go run main.go server.go
and it should work.
Let me know if it does!
答案2
得分: 2
看起来仓库已经从auth0/auth0-go
重命名为auth0/auth0-golang
。
你可以在auth0/auth0-golang/examples/regular-web-app/main.go
中看到错误的导入,而app
包确实存在,但在auth0/auth0-golang/examples/regular-web-app/app/app.go
中。
package main
import (
"github.com/auth0/auth0-golang/examples/regular-web-app/app"
"github.com/joho/godotenv"
"log"
)
提交一个拉取请求可以让该仓库修复错误的导入。
关于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
是不够的,考虑到最近已经修复了从net/yyy
到golang/x/yyyy
的包更改(参见提交9b6b761),go get github.com/golang/oauth2
应该更好地工作。
英文:
It seems that the repo has been renamed from auth0/auth0-go
to: auth0/auth0-golang
You can see that wrong import in auth0/auth0-golang/examples/regular-web-app/main.go
, and the app package does exist, but in 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"
)
A Pull Request would allow that repo to fix the wrong import.
Regarding the oauth error:
# 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
isn't enough
go get github.com/golang/oauth2
should work better, considering, as the OP mentions, that it was recently fixed in order to take into account the package change from net/yyy
to golang/x/yyyy
(see commit 9b6b761).
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论