Node.js使客户端服务端都用javascript开发成为可能。gopherjs使客户端服务端都用golang进行开发成为可能。
我想试用下gopherjs,但是因为gfw的原因,golang.org不能访问,安装费了些周折。
安装golang
在这里http://golangtc.com下载的golang的安装包。同时也可以下载lightide作为go的开发工具。
安装完golang需要设置环境变量。
export GOROOT=GOLANG-INSTALL-DIR
export GOPATH=$HOME/gopath
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH
安装mercurial
我首先安装了homebrew包管理工具。然后用brew install mercurial
安装的mercurial版本管理工具。 在运行go get
时,除了会用到git,有时也会需要用到mercurial版本工具。
安装完后,运行hg
如果有正确输出,则安装成功。
安装gopherjs
正常的安装命令很简单,就是go get -u github.com/gopherjs/gopherjs
。但是因为gfw的原因,golang.org不能访问,所以会报类似下面的错。
package golang.org/x/tools/go/types: unrecognized import path "golang.org/x/tools/go/types"
package golang.org/x/tools/go/exact: unrecognized import path "golang.org/x/tools/go/exact"
package golang.org/x/tools/go/importer: unrecognized import path "golang.org/x/tools/go/importer"
package golang.org/x/tools/go/types/typeutil: unrecognized import path "golang.org/x/tools/go/types/typeutil"
package golang.org/x/crypto/ssh/terminal: unrecognized import path "golang.org/x/crypto/ssh/terminal"
还好golang是开源的,可以到github下载到源码。采取下面的步骤。
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/tools.git
git clone https://github.com/golang/crypto.git
go get -u github.com/gopherjs/gopherjs
上面的步骤成功后,如果执行gopherjs --help
有正确输出,则安装gopherjs完成。