我刚开始使用Golang和Serverless。我基本上已经在MacOS上完成了以下步骤:
export GOPATH="$GOPATH:~/Projects/testproject"
添加到了~/.profile
unable to create lock pkg/dep/sm.lock: Lockfiles must be given as absolute path names
make: *** [build] Error 1
不确定我在做什么错。另外,我还关注了博客文章中的示例设置:https://serverless.com/blog/framework-example-golang-lambda-support/
根据go env
,我的路径是:GOPATH=":/Users/ddibiase-macbook/go:/Users/ddibiase-macbook/Projects/centive/api"
在线上没有多少有用的文档可以帮助您了解:-/
答案 0 :(得分:0)
This documentation可以帮助您设置Go特定的开发环境。
简而言之,您需要设置两个变量-GOPATH
和GOROOT
。
这是您的.profile
的样子……
# this is mac os specific
export GOPATH=$HOME/Projects
# set goroot
export GOROOT=/usr/local/opt/go/libexec
# set path
export PATH=$PATH:$GOPATH/bin
export PATH=$PATH:$GOROOT/bin
答案 1 :(得分:0)
要解决此问题,我最终放弃了创建自定义工作区的工作,只是将我的GOPATH指向一个一致的文件夹。 GOROOT指向/ usr / local / opt / go / libexec(似乎是Brew安装Go的位置)。
小rant:Go的设置经验很糟糕。我得到的事实是,它本来就是要有意见的,但是它就像工作区的放置和设置路径一样简单...安装过程应注意这一点,并使开发人员更清楚地安装构建工具。嘘!
答案 2 :(得分:0)
您可以在 $GOPATH/src/github.com/*
中创建符号链接并将其指向您现有的项目目录。
创建符号链接:
~ >> ln -s $HOME/code/example-project $GOPATH/src/github.com/example-project
验证是否有效
~/go/src/github.com >> ls -l
total 0
drwxr-xr-x 3 trex staff 96 Feb 9 10:20 google
lrwxr-xr-x 1 trex staff 30 Feb 9 15:58 example-project -> /Users/trex/code/example-project
现在您可以在example-project
开展业务,例如
~ code/example-project >> make