golang gopath的新用法

從使用golang開發項目以來,golang的項目代碼依賴問題就一直困擾着我,主要是對gopath的用法不明瞭致使了項目結構很混亂,最近忽然想到一個很好的gopath用法,仔細研究了一下確實可行,這裏就寫下來了分享給你們參考git

需求

首先我想實現的項目結構是,有一個單獨的目錄用來存放第三方開源庫,而後我本身的多個golang項目能夠共用這些開源庫。
另外我不想每次切換項目的時候都去設置全局的gopath目錄。github

實現方法

我所使用的是mac環境,其餘環境請自行研究配置方式,應該大同小異
首先在環境變量中設置golang

vi ~/.bash_profile
export GOPATH=/work/go/gopath
這裏只設置共享的三方開源庫存放目錄,go get 安裝的三方庫都會存在這裏bash

在編譯項目的時候手動將項目跟目錄添加到GOPATH後面spa

echo $GOPATHserver

/work/go/gopath開發

export GOPATH=$GOPATH:/work/go/loolgame
echo $GOPATHrem

/work/go/gopath:/work/go/loolgame文檔

項目目錄要在共享開源目錄後面
最後執行編譯命令
go install serverget

編譯器下如何設置

在編譯器環境下咱們能夠經過設置編譯器中gopath環境來達到以上相同的目的

intelij IDEA

配置環境

QB20170725-1.png

編譯

QB20170725-2.png

go get golang.org/x/net 安裝失敗解決方案

安裝命令:go get golang.org/x/net,錯誤提示:package golang.org/x/net: unrecognized import path "golang.org/x/net",包文檔地址:https://godoc.org/golang.org/...
這個問題主要是由於golang.org 被牆了沒法訪問
簡單的解決方案是

https://github.com/golang/net下載,而後把目錄改爲golang.org/x/net。而後,萬事大吉。
ps:有git的話能夠直接 go get github.com/golang/net,沒有的話本身手動下載放到src目錄下便可。
QB20170725-3.png

原文地址:http://www.mqant.com/topic/59...

相關文章
相關標籤/搜索