天天看點

EasyCVR 開發環境啟動程式報錯import cycle not allowed解決方式

我們在對EasyCVR 開發時,開發環境啟動程式出現報錯,錯誤資訊: import cycle not allowed。這個報錯資訊應該是大家在寫 Golang 程式中比較普遍的一個報錯,那麼本文就從EasyCVR的開發中和大家分享一下這個報錯是如何解決的。

EasyCVR 開發環境啟動程式報錯import cycle not allowed解決方式

錯誤資訊的意思是A包調用B包,B包調用A包,導緻了重複循環調用。正常項目中這個錯誤可能就不是A包調用B包那麼簡單,可能是A調用的B,B調用的C,C調用了A,出現多層的調用,如果是兩個包之間的問題可以通過一個中間包做處理,但是多層就無法用一個中間包處理。

這個過程大緻如下:

A 是應用程式的架構級結構體,在 A 包含子子產品 B 和 C 的指針;

B 為了友善的使用應用的其他子子產品(比如 C )功能,是以在其結構體包含了 A 的指針;

C 要調用 A 包中的某個方法。

如果在項目中出現這種多層循環調用,我們就引入一個包來解決項目問題:

1.建立一個封包件并引入包

EasyCVR 開發環境啟動程式報錯import cycle not allowed解決方式

2.在項目中使用

EasyCVR 開發環境啟動程式報錯import cycle not allowed解決方式

3.在項目中調用

EasyCVR 開發環境啟動程式報錯import cycle not allowed解決方式

在EasyCVR中我們通過分包來解決該問題,當然也有情況可以通過定義接口的方法解決,大家可以根據自身的情況進行判斷。如果還想了解EasyCVR開發過程中的功能實作,歡迎關注我們。