編譯和安裝應用程式

在這個最後一個主題中,您將學習幾個新的 go 命令。雖然 go run 命令是在您進行頻繁更改時編譯和執行程式的便捷快捷方式,但它不會生成可執行的二進位制檔案。

本主題介紹了另外兩個用於構建程式碼的命令

  1. 在 hello 目錄中,從命令列執行 go build 命令以將程式碼編譯成可執行檔案。
    $ go build
  2. 在 hello 目錄中,從命令列執行新的 hello 可執行檔案以確認程式碼是否有效。

    請注意,您的結果可能因您在測試後是否更改了 greetings.go 程式碼而有所不同。

    • 在 Linux 或 Mac 上
      $ ./hello
      map[Darrin:Great to see you, Darrin! Gladys:Hail, Gladys! Well met! Samantha:Hail, Samantha! Well met!]
      
    • 在 Windows 上
      $ hello.exe
      map[Darrin:Great to see you, Darrin! Gladys:Hail, Gladys! Well met! Samantha:Hail, Samantha! Well met!]
      

    您已將應用程式編譯為可執行檔案,因此可以執行它。但要當前執行它,您的提示符需要位於可執行檔案的目錄中,或者指定可執行檔案的路徑。

    接下來,您將安裝可執行檔案,以便在不指定其路徑的情況下執行它。

  3. 瞭解 Go 的安裝路徑,go 命令將在其中安裝當前包。

    您可以透過執行 go list 命令來發現安裝路徑,如下例所示:

    $ go list -f '{{.Target}}'
    

    例如,命令的輸出可能顯示 /home/gopher/bin/hello,這意味著二進位制檔案已安裝到 /home/gopher/bin。您將在下一步中使用此安裝目錄。

  4. 將 Go 安裝目錄新增到系統的 shell 路徑。

    這樣,您就可以在不指定可執行檔案位置的情況下執行程式的二進位制檔案。

    • 在 Linux 或 Mac 上,執行以下命令
      $ export PATH=$PATH:/path/to/your/install/directory
      
    • 在 Windows 上,執行以下命令
      $ set PATH=%PATH%;C:\path\to\your\install\directory
      

    作為替代方法,如果您已經有一個像 $HOME/bin 這樣的目錄在您的 shell 路徑中,並且您希望將 Go 程式安裝在那裡,您可以透過設定 GOBIN 變數來更改安裝目標,使用 go env 命令

    $ go env -w GOBIN=/path/to/your/bin
    

    $ go env -w GOBIN=C:\path\to\your\bin
    
  5. 更新 shell 路徑後,執行 go install 命令來編譯並安裝包。
    $ go install
  6. 只需鍵入應用程式名稱即可執行它。為了使其更有趣,請開啟一個新的命令提示符,並在其他目錄中執行 hello 可執行檔名稱。
    $ hello
    map[Darrin:Hail, Darrin! Well met! Gladys:Great to see you, Gladys! Samantha:Hail, Samantha! Well met!]
    

本 Go 教程到此結束!