[英]How to run a GO project in eclipse with goclipse installed
我已經在我的 eclipse 中安裝了 goclipse 並創建了一個新的 go 項目。
現在這就是我所擁有的:
我有 hello.go 看起來像這樣:
package main
import "fmt"
func main() {
fmt.Println("Hello")
}
然后我按下運行按鈕,或者右鍵單擊文件 hello.go,然后運行,它什么也沒給出。 此外,它在 bin 文件夾中也是空的。
然后我按下run configurations
按鈕,那里幾乎是空的,只有一個項目名稱。 它給:
Given Go package not found.
這是我對 Go 的偏好:
我注意到 GOROOT 和 GOPATH 都與資源管理器中列出的不同,但是一旦我將它們更改為 C:\\Go\\src\\pkg 或 C:\\Go\\src,Apply 和 OK 按鈕將被禁用。 此外,我也沒有 C:\\Go\\src\\pkg 文件夾。
我可以在命令行中go install
或go build
,但我想將 eclipse 用於另一個更大的項目。 它是 windows 7,eclipse 版本是 Luna Service Release 1 (4.4.1)。 謝謝你。
編輯:現在我有以下配置,它工作正常:Go 安裝在 c:\\Go 中的 Preferences: GOROOT:C:\\Go, GOPATH: C:\\Users\\Tiina\\go_workspace Preferences 中的其余部分自動填充. helloTest 項目位於 C:\\Users\\Tiina\\go_workspace\\src\\helloTest hello.go 位於 C:\\Users\\Tiina\\go_workspace\\src\\helloTest\\hello.go 可能是因為我從現有代碼創建了一個項目,並且留下了一些東西,它會自動添加另一個 GOPATH,在 Preferences 中刪除它。
如果GOROOT
是指安裝 go 的位置( C:\\Go
),那么您需要確保:
GOPATH
不同於GOROOT
(這一點很重要,因為GOROOT/[src|pkg|bin]
是Go語言本身的文件夾,而不是為自己的消息來源)GOPPATH
指向一個文件夾,您所有不同的 Go 項目都將在該文件夾下駐留(例如C:\\Users\\yourName\\Go
:定義一個工作區)GOPATH\\src\\myproject
創建的請參閱“如何編寫 Go 代碼”以確保您的安裝和項目源符合預期的組織。
現在它起作用了,但我注意到兩件事很奇怪。
- 首先我做了什么:我將
helloTest
文件夾移動到C:\\Users\\Tiina\\go_workspace\\src
,所以現在它位於C:\\Users\\Tiina\\go_workspace\\src\\helloTest
。- 然后我從現有代碼創建項目。 其他什么都沒有改變。 現在我在資源管理器中有兩個
GOPATH
,一個是C:\\Users\\Tiina\\go_workspace\\src
,另一個是C:\\Users\\Tiina\\go_workspace\\helloTest\\src
。
后者一開始並不存在
我懷疑goclipse所做的是為每個項目定義一個GOPATH
(或完成現有的GOPATH
)。
如果您創建或導入一個項目,它將在<that project/src>
定義/完成GOPATH
如果你的 hello.go 在那個<that project/src/>
文件夾中,那么它應該按預期構建和工作。
項目位置不是任何
GOPATH
條目的一部分。
在這種情況下,項目位置將隱式添加為GOPATH
的條目,並且項目中將使用帶有bin
、pkg
和src
目錄的 Go 工作區結構。請注意,項目的隱式
GOPATH
條目僅適用於該項目中的源模塊。 它對其他 Goclipse 項目不可見(除非該條目明確添加到全局GOPATH
)。在
src
文件夾中,您可以創建 Go 源文件,這些文件將被編譯成庫包(並放入pkg
)或可執行文件(並放入bin
)
這是一個人需要做的。 必須始終遵循 GO 的目錄結構約定。 在 Eclipse 中,一旦創建了一個新項目,只需通過右鍵單擊 src 文件夾在 src 目錄下創建一個“新文件夾”。 現在在這個文件夾下創建一個新的 GO 文件。 我在我的 MAC 上運行它時遇到了問題,但按照上述步驟可以解決。
請尊重這樣一個事實,如果您在 Eclise/GoClipse 中工作時更改 GOPATH,您將必須退出/重新啟動 Eclipse,以便 Eclipse 重新讀取新的環境變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.