首頁 >後端開發 >Golang >go module是怎麼使用本地包的(附範例)

go module是怎麼使用本地包的(附範例)

藏色散人
藏色散人轉載
2021-11-26 16:02:442089瀏覽

本文由go語言教學專欄為大家介紹go module如何使用本地包 ,希望對需要的朋友有幫助!

##go module的使用非常簡單

  1. 初始化go.mod

    go mod init
  2. 整理依賴套件

    go mod tidy
  3. 如果想快取到vendor目錄

    go mod vendor
執行指令之後都會自動把依賴搞定.  

但是, 如果我們是本地開發的包, 還沒有遠端倉庫的時候, 要怎麼解決本地包依賴問題呢?

使用replace將遠端包替換為本地包服務

幸運的是, go module 提供了另一個方案, replace, 這個replace怎麼使用的呢?  

我們先看一下一個最基本的mod檔

module GoRoomDemo

go 1.12

require (
    github.com/gin-gonic/gin v1.3.0
    github.com/gohouse/goroom v0.0.0-20190327052827-9ab674039336
    github.com/golang/protobuf v1.3.1 // indirect
    github.com/gomodule/redigo v2.0.0+incompatible
    github.com/mattn/go-sqlite3 v1.10.0
    github.com/stretchr/testify v1.3.0 // indirect
    golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53 // indirect
)
這是一個簡單的

GoRoom 框架的依賴關係套件, 如果我想使用本地的goroom, 只需要使用replace即可

module GoRoomDemo

go 1.12

require (
    github.com/gin-gonic/gin v1.3.0
    github.com/gohouse/goroom v0.0.0-20190327052827-9ab674039336
    github.com/golang/protobuf v1.3.1 // indirect
    github.com/gomodule/redigo v2.0.0+incompatible
    github.com/mattn/go-sqlite3 v1.10.0
    github.com/stretchr/testify v1.3.0 // indirect
    golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53 // indirect
)

replace github.com/gohouse/goroom => /path/to/go/src/github.com/gohouse/goroom
這裡的
path/to/go/src/github .com/gohouse/goroom 是本地的套件路徑
這樣, 我們就可以愉快的使用本地目錄了。

以上是go module是怎麼使用本地包的(附範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:segmentfault.com。如有侵權,請聯絡admin@php.cn刪除