无法从 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狂欢

这是我尝试过的方法,它对我有用。

  1. 设置路径($GOPATH):
export GOPATH=/var/projects/go
  1. 安装 revel 和命令:
  go get github.com/revel/revel
  go get github.com/revel/cmd/revel
  1. Link revel cmd 到 bin 目录。所以这个命令是可以执行的。
export PATH="$PATH:$GOPATH/bin
  1. 检查 revel 是否有效。只需在命令行
  2. 中输入 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
  1. 检查狂欢版本:
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)
  1. 现在,您可以使用命令创建第一个项目
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