」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在同一目錄中組織一個庫和 CLI 的 Go 專案?

如何在同一目錄中組織一個庫和 CLI 的 Go 專案?

發佈於2024-12-23
瀏覽:368

How Can I Organize a Go Project with Both a Library and a CLI in the Same Directory?

在多包專案中組織程式碼

在同時需要庫和命令列介面(CLI) 的Go 專案中,經常會遇到以下問題在同一目錄中有多個包。

這樣的專案架構:

whatever.io/
    myproject/
        main.go
        myproject.go

套件 main 和 func main 對於在 Go 中啟動執行至關重要,而函式庫需要單獨的套件,例如套件 myproject。然而,當導入這個專案時,Go編譯器可能會反對:

main.go:5:2: found packages myproject (myproject.go) and main (main.go) in $GOPATH/src/whatever.io/myproject

解決方案:嵌套套件

要解決此問題,請將這兩個套件放在與 main.go 相同目錄內的新資料夾中。請記得更新導入語句以引用 $GOPATH 中的新套件。

例如:

whatever.io/
    myproject/
        library/
            myproject.go
        main.go

在main.go中,導入庫包如下:

import "../library/myproject"

這種方式保證了庫和CLI,同時允許兩者駐留在同一目錄中。

附加說明

  • 將套件移至嵌套結構中不會影響任一包的功能。
  • go run 和 go build 指令可用於測試和建置專案。
  • 有關 go build 文件之間差異的更多詳細信息,請參閱提供的鏈接.去構建。
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3