Golang中 import cycle not allowed 問(wèn)題的解決方法
1.問(wèn)題現(xiàn)象

go編譯的時(shí)候報(bào)錯(cuò)import cycle not allowed
cycle意思很簡(jiǎn)單就是循環(huán)的意思。代表的就是一個(gè)包被循環(huán)的導(dǎo)入。
2.問(wèn)題分析
這個(gè)錯(cuò)是在container_cloud/pkg/service這里出現(xiàn)的,說(shuō)明這個(gè)包被循環(huán)導(dǎo)入。
可是service這個(gè)包文件太多怎么檢查呢?

可以看到這個(gè)service包下面的文件特別多。
3.解決問(wèn)題思路
雖然文件很多,但是看自己最近修改過(guò)的文件很少。

檢查發(fā)現(xiàn)這兩個(gè)文件是修改過(guò)的

然后看文件的頭部的修改記錄,不知道怎么看修改記錄的可以回滾,只要文件沒(méi)有提交就可以看到

4.如何破除依賴
檢查發(fā)現(xiàn)是service調(diào)用了mapper的數(shù)據(jù)庫(kù)方法,然后mapper里面用到service的一個(gè)對(duì)象

這種做法是特別不規(guī)范的。我們需要做的就是把這個(gè)對(duì)象拷貝一份,放到其他包里面

放到domain這個(gè)包下,于是依賴解除。
5.問(wèn)題回顧

剛剛的情況就類似于這種。
如果A必須調(diào)用B中的函數(shù),那么我們就破除B對(duì)A的依賴,把對(duì)A的那部分提出來(lái)就行啦,就像剛剛小編不小心在mapper當(dāng)中去用
service的對(duì)象。只能service調(diào)用mapper的函數(shù)

就像這種就不會(huì)有循環(huán)啦。
到此這篇關(guān)于Golang中 import cycle not allowed 問(wèn)題的解決方法的文章就介紹到這了,更多相關(guān)golang中 import cycle not allowed 解決內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 如何解決django配置settings時(shí)遇到Could not import settings ''conf.local''
- Golang報(bào)“import cycle not allowed”錯(cuò)誤的2種解決方法
- 詳解golang避免循環(huán)import問(wèn)題(“import cycle not allowed”)
- golang中import cycle not allowed解決的一種思路
- golang 之import和package的使用
- go各種import的使用方法講解
- 對(duì)Golang import 導(dǎo)入包語(yǔ)法詳解
- Golang import 導(dǎo)入包語(yǔ)法及一些特殊用法詳解
- Golang import本地包和導(dǎo)入問(wèn)題相關(guān)詳解
- golang import自定義包方式
- 解決golang在import自己的包報(bào)錯(cuò)的問(wèn)題
- 解決goland 導(dǎo)入項(xiàng)目后import里的包報(bào)紅問(wèn)題
- Go基礎(chǔ)教程系列之import導(dǎo)入包(遠(yuǎn)程包)和變量初始化詳解
相關(guān)文章
詳解Go語(yǔ)言中自定義結(jié)構(gòu)體能作為map的key嗎
在Go中,引用類型具有動(dòng)態(tài)的特性,可能會(huì)被修改或指向新的數(shù)據(jù),這就引發(fā)了一個(gè)問(wèn)題—能否將包含引用類型的自定義結(jié)構(gòu)體作為map的鍵呢,本文就來(lái)和大家想想講講2023-06-06
go并發(fā)編程sync.Cond使用場(chǎng)景及實(shí)現(xiàn)原理
這篇文章主要為大家介紹了go并發(fā)編程sync.Cond使用場(chǎng)景及實(shí)現(xiàn)原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
Mac上Go環(huán)境和VS Code的正確安裝與配置方法
Go語(yǔ)言是一個(gè)新興的語(yǔ)言。下面介紹一下如何在Mac系統(tǒng)下安裝和使用這個(gè)語(yǔ)言,Go語(yǔ)言提供了mac下安裝包,可直接下載安裝包點(diǎn)擊安裝2018-03-03
Golang之sync.Pool對(duì)象池對(duì)象重用機(jī)制總結(jié)
這篇文章主要對(duì)Golang的sync.Pool對(duì)象池對(duì)象重用機(jī)制做了一個(gè)總結(jié),文中有相關(guān)的代碼示例和圖解,具有一定的參考價(jià)值,需要的朋友可以參考下2023-07-07
gin自定義中間件解決requestBody不可重復(fù)讀問(wèn)題(最新推薦)
這篇文章主要介紹了gin自定義中間件解決requestBody不可重復(fù)讀問(wèn)題,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04

