2013-10-01 104 views
7

我使用的IntelliJ IDEA,並從谷歌,去琅理念 - 插件:「所選目錄不是圍棋SDK有效的家」

https://github.com/mtoader/google-go-lang-idea-plugin/issues/173

當我嘗試向APT提供進入安裝添加到圍棋SDK列表中,我得到以下錯誤

The selected directory is not a valid home for Go Sdk

我曾嘗試加入以下d irectories作爲圍棋SDK根

  • /usr/share/go/
  • /usr/share/src/
  • /usr/lib/go/
  • /usr/lib/go/src/
  • /usr/lib/go/pkg/
  • /usr/lib/go/pkg/linux_amd64

有誰硝酸鉀如何讓這個工作?我已經評論了bugtracker中的各種問題,但是維護者聲稱這是在10個月前修復的。

失敗的是,有沒有人知道這個插件實際上在尋找什麼,會使目錄看起來像SDK目錄?

回答

1

事實證明google-go-lang-idea-plugin需要的文件夾結構與默認apt安裝所產生的略有不同。要解決這個問題:

# mkdir /usr/lib/go/bin 
# ln -s /usr/bin/go /usr/lib/go/bin/go 
# ln -s /usr/bin/godoc /usr/lib/go/bin/godoc 
# ln -s /usr/bin/gofmt /usr/lib/go/bin/gofmt 
+0

從插件的v1.0.0開始,這不再是必需的,因此,請不要混淆系統路徑並向bug跟蹤器報告任何問題以改進它。謝謝。 – dlsniper

+0

v1.0.0仍然是alpha版本,我無法安裝它與PhpStorm版本8,你有什麼建議呢?謝謝 – cirpo

+0

@cirpo你可以使用PHPStorm 9 EAP或IntelliJ IDEA Community 14.1+(這是免費的)。 – dlsniper

1

您似乎已選擇GOPATH,但該工具需要GOROOT!看看這個測試,你會失敗:

https://github.com/mtoader/google-go-lang-idea-plugin/blob/master/src/ro/redeul/google/go/sdk/GoSdkUtil.java#L84

,我只能看到linux_amd64勉強在你彈出它表示GOPATH給我。

一般來說,現在的趨勢是將軟件包/工具(特別是像GO這樣年輕的用戶)作爲非root用戶安裝在主目錄中,並在您的環境中調整$PATH$GOPATH,而不是全局安裝它。這將使升級和更改版本變得更容易。我建議您將~/usr/local/go和您的GOPATH放入~/gopath。然後將IntelliJ指向~/usr/local/go

+1

「一般來說,時下的潮流是安裝軟件包/工具......在你的home目錄...而不是全局安裝它。」這種趨勢坦率地說是荒謬的。你有沒有在你的homedir本地安裝{python,ruby,gcc,ghc}?沒有! – Thomas

+2

這是100%的主題,但在這裏:Python的大小已經開始使用python發行版。在他們的主目錄中... Ruby有很長的rvm,並且被大量使用。 Gcc顯然是編譯的,並且很少用在你的主目錄中,但是是的,那些需要不同版本的人可以在他們的主目錄中編譯它。 – ClojureMostly

0

所以我只是有這個確切的問題上IntelliJ 2016.1.3Go 1.5.

我曾在不久前安裝的IntelliJ轉到插件並安裝GO 1.5而回,而這一切工作的罰款。現在我查了一下,突然間,我確定我沒有刪除它,GO 1.5已從我的系統中刪除。但是誰知道,我一直沒有合作過,所以我可能會刪除它。

反正有點調試後,下面的步驟幫助我:

  1. 安裝最新版本的圍棋(目前爲我1.6.3)。按照https://golang.org/doc/install的說明
  2. 更新IntelliJ插件!
  3. 在IntelliJ中爲項目設置SDK:File -> Project Structure -> Project -> under Project SDK add a New SDK and navigate to your go installation
  4. 點擊Apply,然後Ok