1. 程式人生 > >安裝grpc出現很多pkg無法go get 到

安裝grpc出現很多pkg無法go get 到

go get google.golang.org/grpc

這種官方安裝是無法成功的。報錯如下:

package google.golang.org/grpc: unrecognized import path "google.golang.org/grpc"(https fetch: Get https://google.golang.org/grpc?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

作者:一語驚雷
連結:https://www.jianshu.com/p/dba4c7a6d608
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。

原因:程式碼已經轉移到github,但是程式碼裡的包依賴還沒有修改,所以不能用go get。

正確的安裝方式:

    git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc

    git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net

    git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text

    go get -u github.com/golang/protobuf/{proto,protoc-gen-go}

    git clone https://github.com/google/go-genproto.git $GOPATH/src/google.golang.org/genproto

作者:一語驚雷
連結:https://www.jianshu.com/p/dba4c7a6d608
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。

我再來補充幾點:

解決辦法:

git clone https://github.com/golang/sys.git $GOPATH/src/golang.org/x/sys/unix

解決golang.org/x/net

cd /$GOPATH/src/golang.org/x
git clone https://github.com/golang/net.git

新增net.git以後,報錯如下:

解決golang.org/x/text

cd $GOPATH/src/golang.org/x
https://github.com/golang/text.git

新增text.git以後,報錯如下:

這個是由於之前git clone sys.git的時候,在sys/unix裡面還有一層unix,要解決這個問題,那就把最裡面那層unix裡面的程式碼scp出來到最外層的unix裡面即可。

cd $GOPATH/src/golang.org/x/sys/niux/unix ##首先進入最裡層的unix
scp ./* $GOPATH/src/golang.org/x/sys/unix  ##把最裡層的unix裡面的.go檔案全部拷貝到最外層的unix裡面