Попытки следовать вместе с https://jacobmartins.com/2016/02/29/getting-started-with-oauth2-in-go/Go Get oauth2 дает мне странные ошибки на Linux Mint
Когда я запустить go get golang.org/x/oauth2
ничего странного приходит, но при попытке запустить код, используя go run main.go
Я получаю следующее мой терминал:
# google.golang.org/grpc/credentials
../../../google.golang.org/grpc/credentials/credentials_util_pre_go17.go:58:32: error: reference to undefined field or method ‘GetCertificate’
GetCertificate: cfg.GetCertificate,
^
../../../google.golang.org/grpc/credentials/credentials_util_pre_go17.go:69:32: error: reference to undefined field or method ‘ClientSessionCache’
ClientSessionCache: cfg.ClientSessionCache,
^
../../../google.golang.org/grpc/credentials/credentials_util_pre_go17.go:72:32: error: reference to undefined field or method ‘CurvePreferences’
CurvePreferences: cfg.CurvePreferences,
^
../../../google.golang.org/grpc/credentials/credentials_util_pre_go17.go:58:3: error: unknown field ‘GetCertificate’ in ‘tls.Config’
GetCertificate: cfg.GetCertificate,
^
# golang.org/x/net/http2/hpack
../../../golang.org/x/net/http2/hpack/huffman.go:14:20: error: reference to undefined identifier ‘sync.Pool’
var bufPool = sync.Pool{
^
../../../golang.org/x/net/http2/hpack/huffman.go:14:24: error: expected ‘;’ or newline after top level declaration
var bufPool = sync.Pool{
^
# golang.org/x/net/context/ctxhttp
../../../golang.org/x/net/context/ctxhttp/ctxhttp_pre17.go:36:5: error: reference to undefined field or method ‘Cancel’
req.Cancel = cancel
^
# golang.org/x/oauth2/jws
../../../golang.org/x/oauth2/jws/jws.go:75:17: error: reference to undefined identifier ‘base64.RawURLEncoding’
return base64.RawURLEncoding.EncodeToString(b), nil
^
../../../golang.org/x/oauth2/jws/jws.go:93:16: error: reference to undefined identifier ‘base64.RawURLEncoding’
return base64.RawURLEncoding.EncodeToString(b), nil
^
../../../golang.org/x/oauth2/jws/jws.go:113:16: error: reference to undefined identifier ‘base64.RawURLEncoding’
return base64.RawURLEncoding.EncodeToString(b), nil
^
../../../golang.org/x/oauth2/jws/jws.go:124:25: error: reference to undefined identifier ‘base64.RawURLEncoding’
decoded, err := base64.RawURLEncoding.DecodeString(s[1])
^
../../../golang.org/x/oauth2/jws/jws.go:151:41: error: reference to undefined identifier ‘base64.RawURLEncoding’
return fmt.Sprintf("%s.%s", ss, base64.RawURLEncoding.EncodeToString(sig)), nil
^
../../../golang.org/x/oauth2/jws/jws.go:174:33: error: reference to undefined identifier ‘base64.RawURLEncoding’
signatureString, err := base64.RawURLEncoding.DecodeString(parts[2])
Go версия идти версия xgcc (Ubuntu 4.9.3-0ubuntu4) 4.9.3 Linux/amd64
Запуск Linux Mint 17.3 Cinnamon
Кто-нибудь знает, что я делаю неправильно?
Где вы размещаете ваш 'main.go'? Вы следуете за проектной структурой go lang, как указано здесь - https://golang.org/doc/code.html? – tuk
main.go находится в моем домашнем каталоге по проектам/golang/github.com/user/rent_api. gopath установлен в папку projects/golang, а goroot is/usr – Kwestion