2017-07-03 28 views
1

Go(golang)有可能有一個包含來自不同文件夾的幾個.go文件的包嗎?Go(golang)由幾個文件夾組成的包

我想在主文件夾內創建一個子文件夾,編譯器說它找不到定義(「未定義」錯誤)。當所有文件都在同一個文件夾中時,編譯不會給出錯誤。

謝謝。

+5

號從【如何寫Go代碼(https://golang.org/doc/code.html): 「每個軟件包在一個目錄中包含一個或多個Go源文件。」 「 – JimB

+0

很傷心。不過謝謝!你可以將這個答案作爲一個單獨的答案發布,以便我可以回答這個問題嗎? – Chelovek

+0

嗯,當然你可以,它只是不簡單,需要手動調用Go編譯器(而不是手動工具)。你不想這樣做。 – Volker

回答

3

不,這是不可能的。

如果你想在你的項目中使用文件夾,你必須使用幾個包。

無效

myproject 
| -- main.go (package main) 
| -- routes.go (package main) 
+ -- models 
    | -- db.go (package main) 
    | -- mymodel.go (package main) 

VALID

myproject 
| -- main.go (package main) 
| -- routes.go (package main) 
+ -- models 
    | -- db.go (package models) 
    | -- mymodel.go (package models) 
相關問題