go module使用本地包的方法示例

這篇文章主要介紹了go module使用本地包的方法示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

go module的使用非常簡單

初始化go.mod

go mod init

整理依賴包

go mod tidy

如果想緩存到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 是本地的包路徑

這樣, 我們就可以愉快的使用本地目錄了

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持神馬文庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章