溫馨提示×

溫馨提示×

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

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

GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析

發(fā)布時間:2021-09-18 10:52:13 來源:億速云 閱讀:282 作者:柒染 欄目:編程語言

本篇文章給大家分享的是有關(guān)GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

go,邊寫邊嘗試,在導(dǎo)入包那塊,需要注意的小點還不少,特此總結(jié)。

首先給出一份我實踐成功的案例,然后再總結(jié)注意的點.

go version go1.16.2 darwin/amd64

目錄結(jié)構(gòu)

GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析

main.go

package main

import testPackage "test"

func main() {
	testPackage.Test()
}

TestPackage.go

package testPackage

import "fmt"

func Test ()  {
	fmt.Println("test_success")
}

我的GOPATH設(shè)置的是到go_practice這一層。 GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析

關(guān)于GOPATH,我參考了這篇文章。http://c.biancheng.net/view/88.html

快速查看可以使用命令(macOS和linux)

go env | grep GOPATH

我使用的是GoLand,就沒有去修改env。 GoLand可以直接設(shè)置當(dāng)前項目的GOPATH,支持多個。 GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析 GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析

可以分別設(shè)置全局和當(dāng)前項目。

GOPATH之外,還需要注意:

  1. import后面,雙引號中的,其實是包所在的文件夾名稱(可以直接引用GOPATH目錄下src下的文件夾),而非文件中定義的package名(package testPackage)。

  2. 雙引號前邊的是自定的名字,也不必須是package名,例如我將main文件改為"haha",也一樣可以成功:

package main

import haha "test"

func main() {
	haha.Test()
}

所以其實文件中的package定義的包名,只是需要同一個文件夾下所有文件保持一致,包名和文件夾名稱并不是強制要求統(tǒng)一的。

不過統(tǒng)一起來會更方便,可以直接通過包名調(diào)用方法,不再需要起別名。

package main

import "test"

func main() {
	test.Test()
}
package test

import "fmt"

func Test ()  {
	fmt.Println("test_success")
}
  1. 另外,GoLand是可以自動補全的。像這樣

GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析

  1. 被導(dǎo)入的包的函數(shù)名首字母大寫才能被外部調(diào)用(public聲明)。

以上就是GO導(dǎo)入包報錯以及GoLand設(shè)置GOPATH的示例分析,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(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