我可能會錯誤地解決這個問題(我已經(jīng)閱讀了如何編寫 Go 代碼),但這是我想要實現(xiàn)的目標:我想編寫一個帶有 CLI 的 golang 包,以便用戶可以使用在他們自己的程序中打包,但也使用我用它構(gòu)建的 CLI。所以到目前為止我所擁有的是這個結(jié)構(gòu):mypackage/ -api/ -account.go // package api -node.go // package api -main.go // package main - this is where I want // the executable code to be that is put in the `bin` folder.這是一個非常粗糙的文件結(jié)構(gòu),因為我剛剛開始項目,但這就是我想要實現(xiàn)的目標,而不是構(gòu)建一個包含可用代碼的包,然后使用我的 CLI 構(gòu)建一個單獨的 repo。但是當我嘗試運行時main.go,它說undefined: Account(這是一個結(jié)構(gòu)體account.go)。我的代碼內(nèi)容現(xiàn)在并不重要,它非?;A(chǔ),因為我只是想讓代碼正常工作。這就是我所擁有的。帳戶.gopackage apiimport ( "io/ioutil" "net/http")type Account struct { email string}main.gopackage mainimport ( "github.com/username/mypackage/api" "fmt")func main() { a := Account{} fmt.Printf("%T", a)}如果這是完全不好的做法,我想我只會制作 2 個 repos,一個使用 CLI,另一個使用我的實際包代碼(同樣,其他人可以通過導(dǎo)入在開發(fā)中使用),但我真的希望它成為一個多合一回購。
在 Go 中構(gòu)建 CLI 應(yīng)用程序/包
寶慕林4294392
2021-10-18 15:14:45