2017-03-15 21 views
7

Próbuję zainstalować pakiet w golang context, co zrobiłem tak:Instalujesz pakiet "context" w golangu?

go get golang.org/x/net/context 

Ale kiedy zrobić import "context", nadal pojawia się następujący błąd:

cannot find package "context" in any of: 
/usr/lib/go-1.6/src/context (from $GOROOT) 
/home/saurabh/work/src/context (from $GOPATH) 

może ktoś sugerować, jak zainstalować ten pakiet? Obecnie używam wersji go1.6.2.

+0

Ponieważ sieć go blokuje. Go get nie używa ustawień proxy w systemie, który jest za uwierzytelniającym proxy systemu Windows. Jeśli oprogramowanie po prostu użyłoby tych samych ustawień proxy co IE (co jest tylko jednym wierszem kodu w .NET), rozwiąże problem – vanloc

+0

Śledź link: https://github.com/grpc/grpc-go/issues/711. – vanloc

Odpowiedz

12

zmiana import "context" na import "golang.org/x/net/context".

ale po przejściu 1.7 można użyć import "context", ponieważ stała się ona standardową biblioteką.

Go 1.7 przenosi pakiet golang.org/x/net/context do biblioteki standardowej jako kontekst.

zobaczyć 1,7 wydaniu: https://golang.org/doc/go1.7#context

+0

Zrobiłem to, ale nadal nie działa. Otrzymuję komunikat o błędzie w zadeklarowaniu takiego obiektu: 'r.Context undefined (typ * http.Request nie ma pola lub metody Context)', gdzie 'r' jest wskaźnikiem do obiektu typu' http.Request'. – Jarvis

+1

@Jarvis Wierzę, że 'http.Request.Context' jest dostępny tylko od 1.7. Jeśli chcesz użyć 'r.Context', musisz uaktualnić wersję 1.6.2 do 1.7+, wtedy będziesz mógł również użyć kontekstu' import ''. Oto 1.7 [net/http release notes] (https://golang.org/doc/go1.7#net_http). – mkopriva