解決golang在import自己的包報錯的問題
原因:
使用git clone項目后,項目根路徑是小寫英文名稱,比如cmdbapi,但是項目里面的import導(dǎo)入自己的相關(guān)包時,紅色報錯
解決:
把項目名稱改寫成import導(dǎo)入包的名稱,即cmdbApi。當(dāng)然也可以將import導(dǎo)入包改寫成小寫。
補充:golang之import導(dǎo)入包的一些特殊用法
我們學(xué)習(xí)了golang之后,曉得關(guān)鍵字import是go的包導(dǎo)入語法,而且我們的第一個程序通常都需要輸出hello world。
示例如下:
import( "fmt" ) fmt.Println("hello world")
我們看到golang需要輸出內(nèi)容,需要引入包fmt;相對于php就比較麻煩了。上面這種引入方式是比較常見的方式,但是我們通常會遇到引入包之前有‘.',‘別名','-',對于新手同學(xué)來說很疑惑,這些是干嘛用的那?
點
例子:
import( . “fmt” )
含義:這個點操作的含義就是這個包導(dǎo)入之后在你調(diào)用這個包的函數(shù)時,你可以省略前綴的包名,也就是前面你調(diào)用的fmt.Println(“hello world”) 可以省略的寫成Println(“hello world”)
別名
例子:
import( f “fmt” )
含義: 別名操作調(diào)用包函數(shù)時前綴變成了重命名的前綴,即f.Println(“hello world”)
例子:
import ( _ “github.com/go-sql-driver/mysql”)
含義:
操作其實只是引入該包。當(dāng)導(dǎo)入一個包時,它所有的init()函數(shù)就會被執(zhí)行,但有些時候并非真的需要使用這些包,僅僅是希望它的init()函數(shù)被執(zhí) 行而已。
這個時候就可以使用_操作引用該包了。即使用_操作引用包是無法通過包名來調(diào)用包中的導(dǎo)出函數(shù),而是只是為了簡單的調(diào)用其init函數(shù)()
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
golang?pprof監(jiān)控memory?block?mutex使用指南
這篇文章主要為大家介紹了golang?pprof監(jiān)控memory?block?mutex使用指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04用golang實現(xiàn)一個定時器任務(wù)隊列實例
golang中提供了2種定時器timer和ticker,分別是一次性定時器和重復(fù)任務(wù)定時器。這篇文章主要介紹了用golang實現(xiàn)一個定時器任務(wù)隊列實例,非常具有實用價值,需要的朋友可以參考下2018-05-05基于Golang實現(xiàn)內(nèi)存數(shù)據(jù)庫的示例詳解
這篇文章主要為大家詳細(xì)介紹了如何基于Golang實現(xiàn)內(nèi)存數(shù)據(jù)庫,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的小伙伴可以參考一下2023-03-03淺析Golang開發(fā)中g(shù)oroutine的正確使用姿勢
很多初級的Gopher在學(xué)習(xí)了goroutine之后,在項目中其實使用率不高,所以這篇文章小編主要來帶大家深入了解一下goroutine的常見使用方法,希望對大家有所幫助2024-03-03Go中使用gjson來操作JSON數(shù)據(jù)的實現(xiàn)
本文主要介紹了Go中使用gjson來操作JSON數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08