2 回答

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

TA貢獻1773條經驗 獲得超3個贊
更新
在評論中進一步澄清之后。
您的模塊未初始化。在此處和此處查找官方 Go 教程。我將在答案中逐步向您展示。
您首先需要go mod init在項目的根目錄中使用。我假設您使用的是 Linux,但您可以在 Windows 中執行相同的命令。
在您的終端內:
$ go mod init github.com/Rachit4/colora
其次,為了讓您的主包訪問您在包 colora 中的功能,您需要將export它們更改為大寫字母。
我的項目結構:
- colora (module github.com/Rachit4/colora)
- go.mod
- colora.go
- test.go
- test/
- main.go
請在我的 Go Playground 中查看代碼。
例如,調用同一個包內的函數:
test.go
package colora
func test() {
red("I am red")
}
test/main.go
package main
import "github.com/Rachit4/colora"
func main() {
red("i am red") // this won't work
}
colora.go通過大寫您的方法導出文件中的函數。
colora.go
func Red(text string) {
fmt.Println(string(colorRed), text)
}
現在它將可以main.go調用
colora.Red()
我建議閱讀有關構建項目的內容,盡管 Go 對構建項目有非常寬松的指導方針——他們確實建議將實例的 pakcage 保存在單獨的文件夾中。如果你想要更多的結構,你可以查看這個關于 Go 項目布局的GitHub 存儲庫。
舊答案
因此,如果我對您的理解正確,您有一個要在新項目中導入的 go 包(“github.com/Rachit4/colora”)?還是它仍然在同一個項目中?
如果你在一個新項目中導入它,你是否可能不小心給新項目一個同名的模塊?
所以例如
項目一:
github.com/Rachit4/colora/(go.mod 中的模塊)
colora.go
項目二:
github.com/Rachit4/colora/(go.mod 中的模塊)
main.go <-- 導入“github.com/Rachit4/colora”
- 2 回答
- 0 關注
- 147 瀏覽
添加回答
舉報