2015-09-03 81 views
1

我正在嘗試編寫包含多個子項目的go項目。對於一個簡單的例子項目看起來像這樣Golang,使用子包中的主包的結構或功能

Main 
|- package one 
    |- package one.one 
    |- package one.two 
|- package two 

從我的主包,我可以使用任何子包的任何功能或結構通過導入。但我的問題是我如何從任何子包訪問main的結構或函數。

+2

請閱讀[this](http://stackoverflow.com/a/15051192/720999)。 – kostix

回答

1

謝謝。我通過使用第三個包來解決這個問題。這很容易。

+2

這不是問題的充分答案,如果有的話@Volker的答案是答案,如果是的話,它應該被標記爲這樣。 –

3

通過導入主包中的「子包」。但是不要產生一個導入週期(在這種情況下重構你的代碼)。

注意,Go有(幾乎*)沒有概念_sub_package的:這些都是普通的包和目錄結構有進口和出口的功能,類型,方法,字段,變量的可用性/訪問性沒有影響和常量。

*)內部軟件包和出售軟件包取決於目錄佈局。