亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

需要幫助解決循環依賴問題

需要幫助解決循環依賴問題

Go
繁星coding 2023-02-21 13:02:13
我正在我公司的一個項目中工作,我需要添加一個新接口并將其實現到現有代碼中。當我這樣做時,我遇到了一個具有挑戰性的情況,我遇到了循環依賴問題。以下是更多詳細信息:項目目錄:test-cyclic-dependency現有代碼在 File1 中:test-cyclic-dependency/model/state/model.gopackage stateimport ("test-cyclic-dependency/model")type CollectionByCollectionName struct {    CollectionName string    imOfTypeInModel model.STRING}我需要在 File2 中定義一個新的接口 Search:test-cyclic-dependency/model/search.gopackage modelimport (    "test-cyclic-dependency/model/state")type Search interface {    Search(keyword string) state.CollectionByCollectionName}type STRING string此代碼導致循環依賴錯誤,如下所示:# go build model/state/model.go package command-line-arguments    imports test-cyclic-dependency/model    imports test-cyclic-dependency/model/state    imports test-cyclic-dependency/model: import cycle not allowed有人可以幫我解決這個問題嗎?有沒有辦法解決它保持代碼組織相同?
查看完整描述

2 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

打破依賴循環type STRING string進入state包(因為那是唯一使用它的地方 - 所以我猜它與它相關)并model從包中刪除導入state。或者,如果它不適合那里邏輯上移動type STRING string到它自己的第三個包并且只在state包中導入它。

注意:我假設 typeSTRING只是一些更有意義的占位符,以保持您的示例簡單。根本沒有意義type STRING string。如果您刪除它并僅使用string您不再需要model導入state.


查看完整回答
反對 回復 2023-02-21
?
躍然一笑

TA貢獻1826條經驗 獲得超6個贊

通過將搜索界面移動到新的單獨包“搜索”來解決它。

謝謝大家在這方面幫助我。

謝謝和問候,
Prafulla。


查看完整回答
反對 回復 2023-02-21
  • 2 回答
  • 0 關注
  • 141 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號