3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超4個(gè)贊
有幾個(gè)問(wèn)題:
導(dǎo)入的是包,而不是文件(如其他答案中所述)
文件絕對(duì)導(dǎo)入路徑無(wú)效,如錯(cuò)誤所示。應(yīng)用程序可以使用文件相對(duì)導(dǎo)入路徑(路徑以“./”開(kāi)頭)或相對(duì)于 Go 工作區(qū)的路徑。相對(duì)于 Go 工作區(qū)的導(dǎo)入路徑是首選形式。
習(xí)慣上對(duì)包(及其相應(yīng)的目錄)使用小寫(xiě)名稱(chēng)。問(wèn)題中的駝峰式命名是可行的,但最好順其自然。
以下是如何重新組織上面給出的代碼。這假設(shè) main.go 位于導(dǎo)入路徑為“myapp”的包中。將此導(dǎo)入路徑更改為您想要的任何路徑。
-- main.go --
package main
import (
? ? "log"
? ? _ "myapp/controllers/event"
)
func main() {
? ? log.Println("hello from main")
}
-- go.mod --
module myapp
-- controllers/event/eventController.go --
package event
import "log"
func init() {
? ? log.Println("hello from controllers/event")
}

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
您無(wú)法導(dǎo)入文件。您可以導(dǎo)入一個(gè)包。因此,假設(shè)您的 main 包是“github.com/mypackage”,那么您應(yīng)該導(dǎo)入“github.com/mypackage/Controllers/Event”。

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
Go 支持包級(jí)導(dǎo)入。您可以通過(guò)將包添加到文件開(kāi)頭的導(dǎo)入語(yǔ)句來(lái)導(dǎo)入包。
對(duì)于你的情況,你應(yīng)該做這樣的事情 -
import (
"log"
"net/http"
"Controllers/Event/EventController"
)
另外,您應(yīng)該從文件名中刪除第一個(gè)“/”
_ /Controllers/Event/EventController.go" //problem here
因?yàn)槟腃ontrollers文件夾與Main.go文件位于同一級(jí)別。您應(yīng)該始終在導(dǎo)入語(yǔ)句中給出相對(duì)路徑。
這樣,您就可以使用EventController文件夾下列出的任何文件。
- 3 回答
- 0 關(guān)注
- 219 瀏覽
添加回答
舉報(bào)