溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

在GOPATH中使用GOLAND時會遇到哪些問題

發(fā)布時間:2020-12-15 15:20:00 來源:億速云 閱讀:726 作者:Leah 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)在GOPATH中使用GOLAND時會遇到哪些問題,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

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

在GOPATH中使用GOLAND時會遇到哪些問題

在GOPATH中使用GOLAND時會遇到哪些問題

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

在GOPATH中使用GOLAND時會遇到哪些問題

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"
//導入包路徑,這里src省略,默認加在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中使用GOLAND時會遇到哪些問題

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

但是GOLAND有個坑

在IDE中執(zhí)行一直報錯:

在GOPATH中使用GOLAND時會遇到哪些問題

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

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

在GOPATH中使用GOLAND時會遇到哪些問題

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

在GOPATH中使用GOLAND時會遇到哪些問題

沒毛病了 :)

補充:golang的gopath和goroot

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

我的環(huán)境:

golang 1.9.4

centos7.5 x64

安裝略過。

大致介紹:

gopath:golang的工作目錄和go get下載目錄,項目目錄。

goroot:golang的語言安裝目錄

GOPATH設(shè)置

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

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

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

export GOPATH=/tmp/mygo

GOPATH允許多個目錄,當有多個目錄時,請注意分隔符,Linux系統(tǒng)是冒號,當有多個GOPATH時,默認會將go get的內(nèi)容放在第一個目錄下。

$GOPATH 目錄約定有三個子目錄:

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

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

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

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

我用是

在GOPATH中使用GOLAND時會遇到哪些問題

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

在GOPATH中使用GOLAND時會遇到哪些問題

其中index entire GOPATH我一般去掉勾選,因為我習慣每個項目單獨一個環(huán)境,不與其他項目公用

看完上述內(nèi)容,你們對在GOPATH中使用GOLAND時會遇到哪些問題有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI