我正在開發(fā)一個(gè)具有多層功能的庫(kù)。我希望開發(fā)人員能夠只導(dǎo)入他們需要的部分,即mylib-core,?mylib-feature1,mylib-feature2等等。每個(gè)部分都存在于自己的 git 存儲(chǔ)庫(kù)中。我還想提供一個(gè)簡(jiǎn)單的mylib包,它公開了一組默認(rèn)功能,這對(duì)庫(kù)的新開發(fā)人員很有用。我遇到的問題是顯然你不能在包之間共享包名。這是一個(gè)問題,因?yàn)樽詈脤?dǎo)入所有需要的存儲(chǔ)庫(kù),然后簡(jiǎn)單地在mylib名稱下提供所有可用的東西。我沒有看到重新導(dǎo)出功能以構(gòu)建默認(rèn)mylib包的明顯方法。是否有好的解決方案或更簡(jiǎn)單的方法來完成我的目標(biāo)?
1 回答

米脂
TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊
回答你的問題,沒有慣用的方式來做你想做的事。在 JavaScript 中,導(dǎo)入庫(kù)并導(dǎo)出其成員而不受干擾是很常見的。在 Golang 中不是這樣。
我建議您將整個(gè)庫(kù)托管在一個(gè)存儲(chǔ)庫(kù)下,并將功能拆分為多個(gè)包。Go 編譯器只會(huì)編譯和使用導(dǎo)入的包。
給未來的一個(gè)提示,Go 與你以前知道的幾乎任何其他語言都非常不同。
- 1 回答
- 0 關(guān)注
- 115 瀏覽
添加回答
舉報(bào)
0/150
提交
取消