如何在Ubuntu上设置GOPATH环境变量?我必须编辑哪个文件?

 微笑 发布于 2023-02-05 10:11

我想做一个go get:

go get github.com/go-sql-driver/mysql

它失败并出现以下错误:

package github.com/go-sql-driver/mysql: cannot download, $GOPATH not set. For more details see: go help gopath

当我这样做时go env,Go值列表如下所示:

ubuntu@ip-xxx-x-xx-x:~$ go env
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH=""
GORACE=""
GOROOT="/usr/lib/go"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CGO_ENABLED="1"

显然没有设置GOPATH,我如何设置它?

我看到许多线程提到了这个错误,但没有提供我的问题的答案,需要编辑哪个文件以提供此路径的值?

9 个回答
  • 转到模块[新方法]

    从Go 1.11开始:现在有了Go Modules支持(以前称为vgo),因此您不再需要使用GOPATH。但是,这仍然是实验功能。

    例如,您可以转到系统中的任何目录($ GOPATH之外的目录),并可以在此处初始化一个新的Go模块,然后可以在其中工作。不需要GOPATH。

    您需要执行一次(在目录中):

    go mod init github.com/youruser/yourrepo
    

    此后,Go将把该目录假定为模块根目录。您可以根据需要创建任意数量的模块。GOPATH即将成为历史


    如果您坚持使用GOPATH,请注意以下几点:

    从Go 1.8开始:您无需设置GOPATH或GOROOT。默认情况下,GOPATH在用户/主目录下。

    如果未设置GOPATH,则在Unix系统上假定为$ HOME / go,在Windows上假定为%USERPROFILE%\ go。如果要将自定义位置用作工作区,则可以设置GOPATH环境变量。

    更多信息,请查看本出来。

    2023-02-05 10:13 回答
  • 例如,如果它是Ubuntu,则在安装软件包之后:

    $sudo apt install golang -y
    

    只需将以下行添加到〜/ .bashrc(您的用户)

    export GOROOT=/usr/lib/go
    export GOPATH=$HOME/go
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    

    2023-02-05 10:13 回答
  • 应将GOPATH设置为新创建的空目录.这是go"工作区",它下载包等等.我用〜/ .go.

    例如:

    mkdir ~/.go
    echo "GOPATH=$HOME/.go" >> ~/.bashrc
    echo "export GOPATH" >> ~/.bashrc
    echo "PATH=\$PATH:\$GOPATH/bin # Add GOPATH/bin to PATH for scripting" >> ~/.bashrc
    source ~/.bashrc
    

    来源:http: //www.larry-price.com/blog/2013/12/15/setting-up-a-go-environment-in-ubuntu-12-dot-04/

    2023-02-05 10:13 回答
  • 最短最新的解决方案.

    在终端中写下此代码.

    export GOPATH=path/to/your/gopath/directory
    

    注意:这将在每个新的终端窗口或系统重新启动时重置.

    具有持久性,在粘贴下面的代码.zshrc.bashrc根据您的shell文件.主目录中的那些文件.它将如下所示.

    export PATH=path/to/some/other/place/composer/for/example
    export GOPATH=path/to/your/gopath/directory
    export PATH=$PATH:$GOPATH/bin
    

    2023-02-05 10:14 回答
  • 你以后也需要GOPATH.所以添加它~/.bashrc.

    2023-02-05 10:14 回答
  • export GOPATH=/path/desired/here
    

    无需编辑任何文件,我们只需使用上面的命令直接编辑Go环境变量即可.

    2023-02-05 10:14 回答
  • 如果您已经设置了需要修改环境变量的任何内容,例如Java,Go等,那将非常熟悉.

    我将假设您在Go路径的某处具有以下目录结构:

    \---[folder name]
        +---bin
        +---pkg
        \---src
    

    打开一个新的终端

    类型 sudo nano /etc/environment

    找到PATH=...并结束它并:在最后一条路径后添加冒号然后粘贴到您的完整go path例如/home/user/gocode

    并且你已经完成了,这应该使它在系统中持久化.

    2023-02-05 10:14 回答
  • Ubuntu 14.04

    export GOPATH=$HOME/go
    

    此外,您可以将此字符串添加到文件

    $HOME/.bashrc
    

    2023-02-05 10:14 回答
  • 只需将以下行添加到〜/ .bashrc中,这将保持不变.但是,您可以在我的示例中使用您喜欢的其他路径作为GOPATH而不是$ HOME/go.

    export GOPATH=$HOME/go
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    

    2023-02-05 10:14 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有