主頁(yè) > 知識(shí)庫(kù) > 解決GOPATH在GOLAND中的坑

解決GOPATH在GOLAND中的坑

熱門標(biāo)簽:地圖區(qū)域圖標(biāo)注后導(dǎo)出 官渡電銷外呼管理系統(tǒng)怎么收費(fèi) 江蘇呼叫中心外呼系統(tǒng)有效果嗎 杭州人工智能電銷機(jī)器人費(fèi)用 利用地圖標(biāo)注位置 貴州電話智能外呼系統(tǒng) 400開頭電話怎樣申請(qǐng) 谷歌美發(fā)店地圖標(biāo)注 赤峰電銷

首先我的環(huán)境已配置好:

GO的目錄結(jié)構(gòu)是:

add.go

package calc
//函數(shù)名必須大寫首字母,不然外部包找不到
func Add(a int,b int)(int){
 return a+b
}

sub.go

package calc
func Sub(a int,b int)(int){
 return a-b
}

執(zhí)行文件,main.go

package main
import "fmt"
//導(dǎo)入包路徑,這里src省略,默認(rèn)加在GOPATH
import "go_dev/day1/package_example/calc"
func main(){
 sum := calc.Add(100,300)
 sub := calc.Sub(200,100)
 fmt.Println(sum,sub)
}

在cmd正確執(zhí)行是:

這樣是沒問題的,GOPATH已經(jīng)確定正確

但是GOLAND有個(gè)坑

在IDE中執(zhí)行一直報(bào)錯(cuò):

這里的GOPATH已經(jīng)出錯(cuò)了,所以編譯找不到,我檢查了go env也是正確的GOPATH....

原來(lái)我忘記了GOLAND IDE中也有設(shè)置:

在這里修改為正確的GOPATH,再次執(zhí)行:

沒毛病了 :)

補(bǔ)充:golang的gopath和goroot

近期入門golang,第一個(gè)坑 gopath和goroot。在此做個(gè)記錄用

我的環(huán)境:

golang 1.9.4

centos7.5 x64

安裝略過(guò)。

大致介紹:

gopath:golang的工作目錄和go get下載目錄,項(xiàng)目目錄。

goroot:golang的語(yǔ)言安裝目錄

GOPATH設(shè)置

go 命令依賴一個(gè)重要的環(huán)境變量:$GOPATH

(注:這個(gè)不是Go安裝目錄。下面以筆者的工作目錄為示例,如果你想不一樣請(qǐng)把GOPATH替換成你的工作目錄。)

在類 Unix 環(huán)境下大概這樣設(shè)置:

export GOPATH=/tmp/mygo

GOPATH允許多個(gè)目錄,當(dāng)有多個(gè)目錄時(shí),請(qǐng)注意分隔符,Linux系統(tǒng)是冒號(hào),當(dāng)有多個(gè)GOPATH時(shí),默認(rèn)會(huì)將go get的內(nèi)容放在第一個(gè)目錄下。

$GOPATH 目錄約定有三個(gè)子目錄:

GOPATH下的src目錄就是接下來(lái)開發(fā)程序的主要目錄,所有的源碼都是放在這個(gè)目錄下面,那么一般我們的做法就是一個(gè)目錄一個(gè)項(xiàng)目,例如: $GOPATH/src/mymath 表示mymath這個(gè)應(yīng)用包或者可執(zhí)行應(yīng)用,這個(gè)根據(jù)package是main還是其他來(lái)決定,main的話就是可執(zhí)行應(yīng)用,其他的話就是應(yīng)用包,這個(gè)會(huì)在后續(xù)詳細(xì)介紹package。

src 存放源代碼(比如:.go .c .h .s等)

pkg 編譯后生成的文件(比如:.a)

bin 編譯后生成的可執(zhí)行文件(為了方便,可以把此目錄加入到 $PATH 變量中,如果有多個(gè)gopath,那么使用${GOPATH//://bin:}/bin添加所有的bin目錄)

我用是

這個(gè)開發(fā)在設(shè)置中

其中index entire GOPATH我一般去掉勾選,因?yàn)槲伊?xí)慣每個(gè)項(xiàng)目單獨(dú)一個(gè)環(huán)境,不與其他項(xiàng)目公用

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • GoPath模式和GoMoudle模式的相愛相殺
  • Go外部依賴包從vendor,$GOPATH和$GOPATH/pkg/mod查找順序
  • go語(yǔ)言的工作空間和GOPATH環(huán)境變量介紹
  • 解析GOROOT、GOPATH、Go-Modules-三者的關(guān)系
  • go設(shè)置多個(gè)GOPATH的方式

標(biāo)簽:保定 宜春 泰安 河池 鷹潭 武漢 松原 黔西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解決GOPATH在GOLAND中的坑》,本文關(guān)鍵詞  解決,GOPATH,在,GOLAND,中的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《解決GOPATH在GOLAND中的坑》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于解決GOPATH在GOLAND中的坑的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章