我對Golang有一些關(guān)于導(dǎo)入本地軟件包的問題。這是我的項目結(jié)構(gòu)home/src/github.com/username/project1|main.go|go.mod├── handlers│ ├── handlers.go├── usecases| ├─ ...|...我go.modmodule project1go 1.16我main.gopackage mainimport ( "fmt" "net/http" "project1/handlers/handlers")func main() { http.HandleFunc("/", handlers.Greet) http.ListenAndServe(":8080", nil)}我handlers/handlers.gopackage handlersimport ( "net/http" "fmt")func Greet(w http.ResponseWriter, r *http.Request) { //Do stuff}我正在GOPATH之外構(gòu)建這個,我正在使用go 1.16。C:\users\...\go在閱讀了一些來源之后,說我只能使用模塊名稱和包的路徑來導(dǎo)入包,我使用此行將包導(dǎo)入到包。handlersmainimport "project1/handlers/handlers"但是當(dāng)我嘗試運行它時,這將返回此錯誤。package project1/handlers/handlers is not in GOROOT (C:\...\project1/handlers/handlers)然后我嘗試更改一些東西,例如將我的模塊名稱和導(dǎo)入路徑都更改為此//module name in go.modmodule github.com/username/project1//import path in main.goimport "github.com/username/project1/handlers/handlers"但是然后它返回錯誤,說我需要首先獲取包,當(dāng)我嘗試使用該命令獲取它時,或者只是返回錯誤,因為我沒有推送/發(fā)布這個項目,我不打算這樣做。go get github.com/username/project1/handlers/handlersgo mod tidyrepository not found那么,我在這里犯的問題/錯誤是什么?我必須先發(fā)布項目,然后才能導(dǎo)入自己的本地包嗎?我是否錯過了一些配置?每一個幫助都是值得贊賞的。
為什么我無法在同一模塊中導(dǎo)入包?
幕布斯7119047
2022-09-05 10:55:00