2014-10-08 564 views
0

在Windows上使用Go時,無論何時從控制檯執行go run myprog.go,Go都會在C驅動器上的某處隨機創建一個新的可執行文件。Go語言:運行「go run」時更改生成文件夾

有沒有一種方法來配置它,以便它始終將文件構建到特定的位置,並且最好還避免名稱的隨機性? (即始終構建到D:\ Temp \ LastBuild.exe)。

我能找到一些在做go help rungo help build時沒有幫助的信息。後者有一個輸出標誌-o outfile,但它不被go run接受。

任何幫助表示讚賞。

回答

2

請勿使用go run。它的目的是快速測試代碼片段的大小單行屏幕。

的工作方法是

  1. 編輯的代碼。
  2. go build它。
  3. 運行您的可執行文件,它將具有可預測的名稱。
  4. 轉至步驟(1)。

如果你寫的測試與實施並行(你應該),這會更改

  1. 編輯的代碼。
  2. 編輯測試套件。
  3. go test它。
  4. 轉至步驟(1)。

有關同一主題的更多信息,請參閱this recent thread on the mailing list

+0

好的 - 我刪除了我的最後一條評論,我收回了。我已經改變了我的Sublime構建系統來運行'go build -o D:/Dev/Go/debug.exe&& D:/ Dev/Go/debug.exe'而不是'go run $ file_name' - 這會讓我得到結果我需要不失任何東西。謝謝。 – DannyB 2014-10-08 18:01:39

+0

@DannyB,如果你使用Sublime,考慮使用[GoSublime](https://github.com/DisposaBoy/GoSublime):它具有將Sublime自己的構建系統與'go'工具集成在一起的所有必要的東西。 – kostix 2014-10-09 08:16:56

+0

謝謝,我使用Sublime和優秀的GoSublime。但我對它的構建系統並不感冒。所以我建立了自己的。事實是,我仍然希望能夠改變「跑步」和「測試」構建二進制文件的位置。 – DannyB 2014-10-09 10:06:51