在安装AppEngine SDK时,我遵循了本指南。https://developers.google.com/appengine/docs/go/gettingstarted/introduction
我最初安装了Go 1.2与啤酒(在OSX上)。我已经设定了我的道路:
export GOPATH=$HOME/Documents/go
export PATH=$GOPATH/bin:$PATH
export PATH=$HOME/Documents/go/go_appengine:$PATH我复制/粘贴了hello应用程序,并使用goapp serve运行它。一切都很好。
现在,只要我尝试使用appengine
import (
"appengine"
)我得到编译时错误:
api.go:5:5: cannot find package "appengine" in any of:
/usr/local/Cellar/go/1.2/libexec/src/pkg/appengine (from $GOROOT)
/Users/jan/Documents/go/src/appengine (from $GOPATH)入门指南文档并没有提到这一点。看起来SDK有自己的$GOPATH,就像/src、/pkg和/bin中的dir一样。我想我必须一直在SDK和本机Go之间手动切换$GOPATH,这没有任何意义,甚至对我也不起作用(因为我主要从事非应用程序的工作)。
我在这里显然做错了什么。我遗漏了什么?
编辑:看起来实际的appengine服务器正在编译和运行,但是我的整个设置都坏了(测试,Vim.)。有什么解决办法吗?
发布于 2014-01-09 12:59:40
正如alpe1所提供的,下面的行解决了vim编译器go
ln -s $APPENGINE_SDK/goroot/src/pkg/appengine $GOROOT/src/pkg/
ln -s $APPENGINE_SDK/goroot/src/pkg/appengine_internal $GOROOT/src/pkg/
mkdir -p $GOROOT/src/pkg/code.google.com/p/
ln -s $APPENGINE_SDK/goroot/src/pkg/code.google.com/p/goprotobuf
$GOROOT/src/pkg/code.google.com/p/我还需要更新gocode 自由路径 (cf选项),以便为应用程序引擎提供:
gocode set lib-path "$APPENGINE_SDK/goroot/pkg/linux_amd64_appengine"发布于 2014-01-25 21:59:40
对于测试应用程序引擎,请考虑"appengine/aetest",它取代了其他有关此问题的答案中提到的测试框架。
至于vim,让我们避免在不同的GOROOT目录之间进行符号链接。这是最糟糕的类型和类型的bug的配方:稍微不匹配的库依赖关系。在启动GOROOT之前,您考虑过简单地导出不同的vim吗?你可以把它放到化名中去:
# You could of course drop this in your .bashrc, .bash_profile, or .zshrc
$ alias appvim="export GOROOT=$APPENGINE_SDK/goroot && vim"syntastic所做的就是在$GOROOT/src中查找相关的包含。通过将$GOROOT更改为appengine,您将检查正确的库。
发布于 2016-04-17 16:09:31
在包的前面加上google.golang.org例如。
"google.golang.org/appengine"
适用于1.9.35版本。
https://stackoverflow.com/questions/21012037
复制相似问题