【问题标题】:GOPATH error in windows "GOPATH entry is relative; must be absolute path: "Windows 中的 GOPATH 错误“GOPATH 条目是相对的;必须是绝对路径:”
【发布时间】:2016-03-09 06:57:49
【问题描述】:

我是 GO 新手,在 Windows 中初始化 GOPATH 时遇到错误。 在我的项目文件夹中是

C:\Users\kamin\Documents\pm-manager

我尝试在环境变量 (GOPATH) 中设置路径,但出现错误 go: GOPATH 条目是相对的;必须是绝对路径:“:/cygdrive/c/Users/kamin/Documents/pm-manager\r\r”。 运行“go help gopath”以供使用。

【问题讨论】:

  • 显然您正在使用 Cygwin,您在问题的任何地方都没有提及。为什么不直接从常规 Windows cmd 窗口运行 go
  • @Michael 我在项目中使用 Cygwin 构建 .sh 文件
  • 在 cygwin 下运行非常好,您只需要记住一件事:如果您使用 Windows Go 安装,它需要一个 Windows GOPATH,这意味着:1:没有 ':' 来分隔条目(我认为它是 ';' 在 Win) 和 2:使用 Windows 路径,如 c:\User\kamin。就是这样。

标签: go


【解决方案1】:

遇到了同样的问题。修复很简单:只需在整个路径名前面指定驱动器即可。出现此问题是因为我按照“开始”页面上的说明进行操作并设置 GOPATH=%HOMEPATH%\Work 。问题在于 %HOMEPATH% 被定义为相对路径 (\Users\MyName),因此 GOPATH 现在指向 \Users\MyName\Work 。我需要做的只是设置GOPATH=c:\Users\MyName\Work,然后错误就消失了。

【讨论】:

  • @sandun-tharaka 如果解决方案解决了您的问题,请将其标记为正确答案。
  • 额外说明:如果 GOPATH 在 cygwin 中设置(在 .bashrc 中),则将“\”更改为“/”
  • 在 Linux 中,我尝试了export GOPATH=$/media/storage/gocode 并得到了这个错误。我需要删除美元符号。它需要绝对路径。所以我做了export GOPATH=/media/storage/gocode,它成功了。
【解决方案2】:

我遇到了同样的问题。我的 go 版本是 go1.9.1 windows/amd64。 但是我通过删除 GOPATH 的 simucolon 端解决了这个问题。

【讨论】:

    【解决方案3】:

    作为替代方案,您可以在 Windows 10 下将其设置为 %USERPROFILE%\

    【讨论】:

      【解决方案4】:

      你可以把这个case用cygwin这个go path

      导出 GOPATH='c:\folder\folder\folder\'

      对于 cygwin 在字符串 'c:\path' 中是必需的

      通常你尝试使用 /cygdrive/.../...

      但对于 GO 是不可能的(需要 c:\ 或其他驱动器)

      【讨论】:

        【解决方案5】:

        添加一个我遇到的错误案例,是设置 GOPATH 时的一个愚蠢的错误。

        我添加了:D\Go(忘记在驱动器号后面添加冒号)。 正确的应该是D:\Go,当然这解决了错误。

        【讨论】:

          猜你喜欢
          • 2021-09-26
          • 2013-09-24
          • 2018-02-04
          • 2016-03-16
          • 2022-12-15
          • 2016-09-29
          • 1970-01-01
          • 2017-05-17
          • 2010-12-06
          相关资源
          最近更新 更多