Go 自定義package包設(shè)置與導(dǎo)入操作
package 包導(dǎo)入記錄
首先需要知道2個值
$GOROOT
$GOPATH
第二個值可以設(shè)置多個,2個值之間使用冒號:做連接。
系統(tǒng)找包的時候,會去對應(yīng)路徑下的src中去尋找。比如,我在path目錄的src目錄下新建文件夾HelloWorld,其中有一個文件printHelloWorld.go。

其對應(yīng)的代碼為:
package HelloWorld
import "fmt"
func PrintHelloWorld(){
fmt.Print("Hello World\r\n")
printILoveYou()
}
// 注意,小寫的 printILoveYou 是沒法在外部調(diào)用的,只能在內(nèi)部調(diào)用
func printILoveYou() {
fmt.Print("I love you\r\n")
}
在外部,非path目錄下時,可以直接新建一個main包,這里聲明一下main包的作用,其實(shí)就是項目的起點(diǎn),比如我們上面建立的包,其實(shí)可以算是輔助包,里面編寫的所有代碼都是函數(shù),要不是供內(nèi)部調(diào)用的,要不就是供外部調(diào)用的,而main包,就是一個項目的入口,只要你將main包和項目相關(guān)聯(lián),就不會糾結(jié)于我需要幾個main包這樣的問題了。
一個目錄下只能有一個 main 包,語法上是這樣規(guī)定的

補(bǔ)充:go語言導(dǎo)入不了自己寫的包,go語言中g(shù)opath作用
初試go語言,按照文檔的要求配置好了gopath后,一直不知道干什么用。。。
然后寫了第一個demo后發(fā)現(xiàn)倒不如不了自己寫的包,然后翻回頭才看gopath
結(jié)構(gòu)如下

bin為生成的可執(zhí)行文件
pkg為編譯好的文件
src為項目源碼文件
之前做java項目都會設(shè)置個workpath工作目錄,其實(shí)這個src跟這個是一個意思,就是放你工程源碼的地方,之前導(dǎo)入不進(jìn)包因為項目放在自建的一個workpath下了
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
關(guān)于Golang變量初始化/類型推斷/短聲明的問題
這篇文章主要介紹了關(guān)于Golang變量初始化/類型推斷/短聲明的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02
淺談Go語言不提供隱式數(shù)字轉(zhuǎn)換的原因
本文主要介紹了淺談Go語言不提供隱式數(shù)字轉(zhuǎn)換的原因,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
Go語言工程實(shí)踐單元測試基準(zhǔn)測試示例詳解
這篇文章主要為大家介紹了Go語言工程實(shí)踐單元測試基準(zhǔn)測試示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
解析golang 標(biāo)準(zhǔn)庫template的代碼生成方法
這個項目的自動生成代碼都是基于 golang 的標(biāo)準(zhǔn)庫 template 的,所以這篇文章也算是對使用 template 庫的一次總結(jié),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-11-11
Golang實(shí)現(xiàn)微信公眾號后臺接入的示例代碼
這篇文章主要介紹了Golang實(shí)現(xiàn)微信公眾號后臺接入的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
VS Code配置Go語言開發(fā)環(huán)境的詳細(xì)教程
這篇文章主要介紹了VS Code配置Go語言開發(fā)環(huán)境的詳細(xì)教程,本文通過實(shí)例代碼圖文相結(jié)合的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05

