【问题标题】:liteide setting GOROOT to GOPATH when runliteide 在运行时将 GOROOT 设置为 GOPATH
【发布时间】:2015-05-08 15:42:07
【问题描述】:

在开发会话的中间,这种愚蠢的行为开始了,现在它看起来是永久性的。我不知道发生了什么:

[dtrombley@sleet bin]$ echo $GOROOT
/usr/lib/golang
[dtrombley@sleet bin]$ echo $GOPATH
/home/dtrombley/go/
[dtrombley@sleet bin]$ ./liteide

liteide 构建错误:

 ../../github.com/Sirupsen/logrus/writer.go:4:2: cannot find package "bufio" in any of:
/home/dtrombley/go/src/bufio (from $GOROOT)
/home/dtrombley/go/src/bufio (from $GOPATH)

什么?为什么使用 GOPATH 代替 GOROOT?这曾经有效,并且在 liteide 运行时神秘地切换到损坏的,从一个构建到下一个构建,实际上是几秒钟后......

有人看过吗?有什么方法可以在 liteide 中检查/设置 GOROOT?

[编辑] 更奇怪的是:我认为 GOPATH 末尾的 / 可能会混淆它,所以我删除了它。现在:

 [dtrombley@sleet bin]$ echo $GOROOT
 /usr/lib/golang
 [dtrombley@sleet bin]$ echo $GOPATH
 /home/dtrombley/go
 [dtrombley@sleet bin]$ ./liteide

...

warning: GOPATH set to GOROOT (/home/dtrombley/go) has no effect
../../github.com/Sirupsen/logrus/writer.go:4:2: cannot find package "bufio" in any of:
/home/dtrombley/go/src/bufio (from $GOROOT)
($GOPATH not set)

痛苦。

【问题讨论】:

  • 两条路径末尾的斜线恢复为第一个引用的错误。

标签: go liteide


【解决方案1】:

您可以检查是否在/usr/share/liteide/liteenv/linux*.env(可以是issue as reported in here)中设置了GOROOT
也可以查看GOROOT is set in other place as well是否。

最后用latest liteide (x27.2.1)检查问题是否仍然存在。


OP BadZen 确认in the comments

它在会话中间切换,因为我一定是误点击并将我的目标从 linux64 切换到 linux32 - linux32.env 有错误的 GOROOT 条目 (GOROOT=$HOME/go)。

【讨论】:

  • 啊,是的,这就是问题所在。它在会话中间切换,因为我必须单击并将目标从 linux64 切换到 linux32 - linux32.env 有错误的 GOROOT 条目(GOROOT=$HOME/go)。呃,那不应该覆盖环境。 TYVM
  • @BadZen 太好了!我已将您的评论包含在答案中以提高知名度。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-07-17
  • 1970-01-01
  • 1970-01-01
  • 2011-12-19
  • 1970-01-01
  • 2014-09-06
  • 1970-01-01
相关资源
最近更新 更多