golang 第三方包的使用總結

來源:互聯網
上載者:User

21天精品區塊鏈課程免費學習,深入實戰行家帶路,助力開發人員輕鬆玩轉區塊鏈!>>>   

golang 第三方包的安裝的方法:

1. go get 安裝

# 比如要安裝 "github.com/gin-gonic/gin"$ go get github.com/gin-gonic/gin
  • 注意:執行go get 命令需要先安裝git命令,並配置git全域變數。

2. 源碼包安裝

由於國內網路問題,很多時候go get命令並不能安裝,所以就需要手動下載源碼包,然後拷貝到$GOPATH/sr/ 目錄下

# 比如要安裝"github.com/golang/protobuf/proto"# 去github.com/golang/protobuf下載源碼包,# 拷貝到 $GOPATH/src/github.com/golang/protobuf$ cd $GOPATH/src/github.com/golang/protobuf$ go install
  • 注意:第三包安裝完成後,應用程式匯入包時還是使用的源碼,而非 $GOPATH/pkg/ 下的 .a檔案。如何能像標準包fmt一樣直接使用pkg,還需進一步研究。
  • 注意:上面直接寫的$GOPATH,在 GOPATH 只有一個目錄的時候可以這樣寫,按tab鍵就會自動切換為實際目錄,如果 GOPATH 配置了多個目錄則要輸入具體的目錄。

golang 使用第三方包

使用方式

在應用程式中直接impor即可

// 比如要使用  "github.com/gin-gonic/gin"import "github.com/gin-gonic/gin"
  • 注意:GO 和Java 不同的是:所有import的包必須在%GOPATH路徑下,如果直接匯入源碼路徑下的包,編譯會報錯。因為GO只會在$GOPATH 下找包的依賴,而不會在當前工程下找。

golang 增加環境變數

很多時候我們並不希望自己的工程代碼和下載的第三方包代碼混在一起,這時候就想自己建一個目錄,但是我們知道,執行go install 的時候,必須在 $GOPATH 路徑下,所以我們要將自己的自己建立的目錄加入到$GOPATH中。比如我在/home/jerry/go/ 下面建了src/ 目錄,裡面放的是我自己寫的包 myMax/myMax.go

# 使用 vim 開啟 ~/.bash 檔案$ vim ~/.bash# 在裡面添加剛才自己建立的工作目錄export GOPATH=$GOPATH:/home/jerry/go/# 退出 vim 並讓更改立即生效$ source ~/.bash# 安裝自己的包, 發現不會報錯了$ cd ~/go/src/myMax/$ go install

包管理工具 govendor 的安裝

按照上面的方法按照,安裝完以後再$GOPATH/bin/目錄下就可看到有一個govendor檔案

$ ll ~/workspace/bin/-rwxrwxr-x 1 jerry jerry 13146288 Jul 23 04:44 govendor*# 將govendor 添加到環境變數$ vim ~/.bash# 在vim檔案中添加export PATH=$PATH:/home/jerry/workspace/bin/$ source ~/.bash

govendor 的使用

進過前面的配置,我們現在已經可以在自己的目錄下使用govendor命令了。

$ cd ~/go/src/myMax/# 產生vendor目錄,產生vendor.jso$ govendor init$ cat vendor/vendor.json {"comment": "","ignore": "test","package": [],"rootPath": "myMax"}

添加依賴包到vendor目錄下

# govendor add +e 也可以$ govendor add +external

理解golang包匯入

https://www.cnblogs.com/sevenyuan/p/4548748.html

  1. 在使用第三方包的時候,實際上是連結了以該最新源碼編譯的臨時目錄下的.a檔案。
  2. import後面的最後一個元素應該是路徑,就是目錄,並非包名。
  3. fmt.Println()中的fmt則是包名。
  4. import m "lib/math" 中的m是包名。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.