无法从 Go 安装 Revel 框架
Cannot install revel framework form Go
我尝试安装 Revel Framework。我按照文档中给出的所有步骤进行操作,但每当我尝试 运行 Revel 命令时,它都会抛出 panic 错误。
以下是我正在执行的步骤
环境路径:
export GOROOT=/usr/local/go
export GOPATH=/Users/<username>/Desktop/gocode
export PATH="/Users/<username>/gocode/bin:$PATH"
安装 Revel
go get github.com/revel/revel
go get github.com/revel/cmd/revel
export PATH="$PATH:$GOPATH/bin"
当我 运行 revel 版本时它显示:
panic: runtime error: slice bounds out of range
goroutine 1 [running]:
github.com/revel/cmd/model.(*CommandConfig).UpdateImportPath(0xc4200961c0, 0x20)
/Users/amitsharma/Desktop/gocode/src/github.com/revel/cmd/model/command_config.go:122 +0x907
main.main()
/Users/amitsharma/Desktop/gocode/src/github.com/revel/cmd/revel/revel.go:133 +0x243
当我运行
revel run -a my-app
显示
ERROR 19:34:59 harness.go:231: Could not start application error="revel/harness: app died reason: exit status 2"
INFO 19:34:59 watcher.go:272: Watcher: Recording error last build, setting rebuild on error="App failed to start up: revel/harness: app died reason: exit status 2"
INFO 19:34:59 watcher.go:277: Rebuilt, result error="App failed to start up: revel/harness: app died reason: exit status 2"
我的go版本
go version go1.10.3 darwin/amd64
我的环境
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/amitsharma/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/<username>/Desktop/gocode"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/0d/pkfrs5cj0v57xgsnwvb2kb580000gn/T/go-build028697826=/tmp/go-build -gno-record-gcc-switches -fno-common"
尝试re-install狂欢
这是我尝试过的方法,它对我有用。
- 设置路径($GOPATH):
export GOPATH=/var/projects/go
- 安装 revel 和命令:
go get github.com/revel/revel
go get github.com/revel/cmd/revel
- Link revel cmd 到 bin 目录。所以这个命令是可以执行的。
export PATH="$PATH:$GOPATH/bin
- 检查 revel 是否有效。只需在命令行
中输入 revel
输出会像这样
Usage:
revel [OPTIONS] <command>
Application Options:
-v, --debug If set the logger is set to verbose
--historic-run-mode If set the runmode is passed a string not json
-X, --build-flags= These flags will be used when building the application. May be specified multiple times, only applicable for Build, Run,
Package, Test commands
Available commands:
build
clean
new
package
run
test
version
- 检查狂欢版本:
revel version
输出
Revel executing: displays the Revel Framework and Go version
Revel Framework : 0.21.0 (0.21.0 remote master branch)
Revel Cmd : 0.21.1 (0.21.1 remote master branch)
Revel Modules : 0.21.0 (0.21.0 remote master branch)
- 现在,您可以使用命令创建第一个项目
revel new myapp
输出
Revel executing: create a skeleton Revel application
Your application has been created in:
/var/projects/go/src/myapp
You can run it with:
revel run -a myapp
我尝试安装 Revel Framework。我按照文档中给出的所有步骤进行操作,但每当我尝试 运行 Revel 命令时,它都会抛出 panic 错误。 以下是我正在执行的步骤 环境路径:
export GOROOT=/usr/local/go
export GOPATH=/Users/<username>/Desktop/gocode
export PATH="/Users/<username>/gocode/bin:$PATH"
安装 Revel
go get github.com/revel/revel
go get github.com/revel/cmd/revel
export PATH="$PATH:$GOPATH/bin"
当我 运行 revel 版本时它显示:
panic: runtime error: slice bounds out of range
goroutine 1 [running]:
github.com/revel/cmd/model.(*CommandConfig).UpdateImportPath(0xc4200961c0, 0x20)
/Users/amitsharma/Desktop/gocode/src/github.com/revel/cmd/model/command_config.go:122 +0x907
main.main()
/Users/amitsharma/Desktop/gocode/src/github.com/revel/cmd/revel/revel.go:133 +0x243
当我运行
revel run -a my-app
显示
ERROR 19:34:59 harness.go:231: Could not start application error="revel/harness: app died reason: exit status 2"
INFO 19:34:59 watcher.go:272: Watcher: Recording error last build, setting rebuild on error="App failed to start up: revel/harness: app died reason: exit status 2"
INFO 19:34:59 watcher.go:277: Rebuilt, result error="App failed to start up: revel/harness: app died reason: exit status 2"
我的go版本
go version go1.10.3 darwin/amd64
我的环境
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/amitsharma/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/<username>/Desktop/gocode"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/0d/pkfrs5cj0v57xgsnwvb2kb580000gn/T/go-build028697826=/tmp/go-build -gno-record-gcc-switches -fno-common"
尝试re-install狂欢
这是我尝试过的方法,它对我有用。
- 设置路径($GOPATH):
export GOPATH=/var/projects/go
- 安装 revel 和命令:
go get github.com/revel/revel
go get github.com/revel/cmd/revel
- Link revel cmd 到 bin 目录。所以这个命令是可以执行的。
export PATH="$PATH:$GOPATH/bin
- 检查 revel 是否有效。只需在命令行 中输入
revel
输出会像这样
Usage:
revel [OPTIONS] <command>
Application Options:
-v, --debug If set the logger is set to verbose
--historic-run-mode If set the runmode is passed a string not json
-X, --build-flags= These flags will be used when building the application. May be specified multiple times, only applicable for Build, Run,
Package, Test commands
Available commands:
build
clean
new
package
run
test
version
- 检查狂欢版本:
revel version
输出
Revel executing: displays the Revel Framework and Go version
Revel Framework : 0.21.0 (0.21.0 remote master branch)
Revel Cmd : 0.21.1 (0.21.1 remote master branch)
Revel Modules : 0.21.0 (0.21.0 remote master branch)
- 现在,您可以使用命令创建第一个项目
revel new myapp
输出
Revel executing: create a skeleton Revel application
Your application has been created in:
/var/projects/go/src/myapp
You can run it with:
revel run -a myapp