【问题标题】:I use IntelliJ IDEA as golang IDE, and system environment have already set GOPATH,But IDEA can't load it我用IntelliJ IDEA作为golang IDE,系统环境已经设置了GOPATH,但是IDEA加载不出来
【发布时间】:2013-07-20 05:09:32
【问题描述】:

我在Windows下使用IntelliJ IDEA作为golang IDE,系统环境已经设置了GOPATH,但是IDEA无法加载$GOPATH。

我用go get github.com/astaxie/beego,这个包安装正确,但是在IDEA中无法导入这个库。

我以这种方式在项目结构中添加了这个包:

和这个项目的选择“Go sdk go1.1.1 windows/amd64”一样

如何在idea中设置GOPATH?

【问题讨论】:

标签: intellij-idea go


【解决方案1】:

更新 (2017-10-22)

根据新版Gogland(EAP 16)的发行说明,从现在开始,对应的Go插件只能与IntelliJ IDEA Ultimate一起使用。这遵循通过 IntelliJ IDEA Ultimate 插件或作为独立 IDE(例如 PyCharm、Webstorm 或在本例中为 Goland)提供对不同语言的支持的模式。

更多详情请见related blog post

更新 (2017-04-24)

作为最终解决 OP 问题的替代解决方案,我想推荐专门用于 Go 开发的新 IDE,JetBrains Gogland。设置非常轻松,但如果您遇到困难,已经提供了有用的文档。

检查Gogland,可能对你有用。

还有一个official plugin“拥有您在 Gogland 可以找到的一切”。

如果您想知道这个新插件和旧的 go-lang-idea-plugin 之间可能有什么区别,请查看 FAQ article 的解释。

原答案

背景资料

在 OS X Mavericks 上,通过 Macports 安装 Go。将 Go 插件版本 0.9.15 与 IntelliJ IDEA 一起使用。

问题

我想让 IDE 理解导入并为我在 GOPATH 中安装的任何包提供自动完成功能。 (我开始使用 Revel 创建应用程序,但缺少自动完成功能...)

解决方案

这是我所做的:

  • 配置 Go SDK(在菜单中:查看 > 打开库设置 > 平台设置 > SDK)。
  • 打开您要设置的 Go SDK 的“类路径”选项卡。
  • 添加一个新项目,在 $GOPATH 中选择“src”目录。
  • 点击“应用”或“确定”。
  • (不工作!?!?,抱怨,头痛......)
  • 在菜单中:文件 > 使缓存无效/重新启动...
  • 点击“无效并重新启动”。
  • 赢了!

希望这可能是您想要的!

【讨论】:

  • 这行得通,我很高兴找到你的答案。但是有一些事情可能很麻烦,当你用陶醉的方式创造一些东西时,它会与你前进的所有其他东西相配。这意味着如果我按照您添加 src 文件夹的说明进行操作,我自己的应用程序将获得文件和文件夹的依赖颜色。你也解决了这个问题吗?
  • 谢谢。有用!我一直在为我的所有 golang 项目使用 Atom.io IDE,因为我对 IntelliJ IDE 感到非常恼火。有了这个技巧,我又恢复了生产力。还有一个问题,有没有办法强制 go 插件在保存时对源代码进行 lint 和格式化? atom.io 插件在这方面做得很好。
  • 该答案有一个快速修复方法,使用 alt + cmd + L
  • 这并没有解决我的问题。隐藏在我的 godeps 文件夹中的库对 intellij 是不可见的。
  • 是的,它正在工作。谢谢你。附加线索。假设您有项目,我将文件夹命名为 test。文件夹层次结构应该是这样的。 src/github.com/instance/test。这就是我对本地开发所做的事情
【解决方案2】:

这是您在 IntelliJ 2016 中设置 GOPATH 的地方(在我的情况下,我的 GOPATH 是 /development/workspace/golang

【讨论】:

    【解决方案3】:

    尝试最新版本的插件。从 0.9.15 版本开始,它应该会更好地工作。

    请随时帮助我们或报告您遇到的任何错误。

    【讨论】:

    • 这是否解决了所有 OP 问题?特别是“如何在idea中设置GOPATH?”
    • @MickyDuncan OP 要求提供与已弃用版本相关的内容,所有其他答案都建议他在最新版本的上下文中出错。所以,如果你问我,说:请更新以解决你描述的问题是一个有效的答案:)
    【解决方案4】:

    Go 的 IDEA 插件 does not understand GOPATH 由 Go 约定定义,它仅使用由 SDK 确定的 GOROOT。最好的解决方法是在 GOROOT 中创建符号链接到 GOPATH 中的包:

    $GOPATH/src/github.com       <--  $GOROOT/src/pkg/github.com
    $GOPATH/src/code.google.com  <--  $GOROOT/src/pkg/code.google.com
    ... etc
    

    在 Windows 中应该也可以。

    【讨论】:

      【解决方案5】:

      我不使用 IntelliJ,但我对 Eclipse 也有类似的问题。 我可能做错了什么,但 Eclipse 本身无法识别 GOPATH 环境变量。

      我所做的是手动将一个条目添加到我正在使用的库的 Go 设置中。 例如,它看起来像 /somewhere/in/your/hd/github.com/ataxie/beego。 请注意,您必须指定库的基本目录,而不是 /src 或 /pkg 文件夹。

      希望这会有所帮助。

      【讨论】:

        【解决方案6】:

        在您的系统设置中确保所有这些环境变量都以这种方式设置

        GOROOT=C:\Go
        GOBIN=%GOPATH%\bin
        PATH=%PATH%;c:\go\bin;%GOBIN%
        

        (如果你在c:\Go中安装了Go)

        在您的用户文件夹中为 Go 创建一个目录,例如命名为 goplayground
        创建另一个指向该目录的环境变量

        GOPATH=C:\Users\YOUR_USENAME\goplayground
        

        就是这样。 现在 IntelliJ IDEA Go 插件应该可以正常工作了。

        【讨论】:

          猜你喜欢
          • 2015-05-05
          • 2023-03-21
          • 2012-11-24
          • 2019-07-06
          • 1970-01-01
          • 2018-01-23
          • 1970-01-01
          • 1970-01-01
          • 2018-05-07
          相关资源
          最近更新 更多