首页 > 后端开发 > Golang > 正文

在Ubuntu 20.04上安装最新版Golang的最佳实践是什么

P粉602998670
发布: 2025-09-11 12:53:01
原创
441人浏览过
最直接且推荐的做法是从官网下载最新Go二进制包并手动配置。首先下载go1.22.3.linux-amd64.tar.gz,解压至/usr/local,再将/usr/local/go/bin加入PATH环境变量,并设置GOPATH为$HOME/go,最后通过go version和go env验证安装。不推荐使用apt安装,因Ubuntu仓库版本滞后,易导致兼容性问题。为管理多版本Go,可使用goenv工具,支持按项目切换版本。安装后通过go run运行“Hello, Go!”程序,验证环境正常。

在ubuntu 20.04上安装最新版golang的最佳实践是什么

在Ubuntu 20.04上安装最新版Golang,最直接且推荐的做法是绕过系统包管理器,直接从官方网站下载最新的二进制发行包并手动配置。这样做不仅能确保你使用的是最新、最稳定的版本,还能更好地控制Go环境,避免因系统仓库更新滞后而带来的版本兼容性问题。这在我看来,是追求开发效率和环境一致性的最佳选择。

解决方案

要安装最新版Golang,请按照以下步骤操作:

  1. 下载最新版Go二进制包: 打开Go官方下载页面(

    https://golang.org/dl/
    登录后复制
    ),找到适用于Linux的最新稳定版本(通常是
    goX.Y.Z.linux-amd64.tar.gz
    登录后复制
    )。你可以直接复制下载链接,然后使用
    wget
    登录后复制
    curl
    登录后复制
    在终端中下载。

    wget https://golang.org/dl/go1.22.3.linux-amd64.tar.gz # 请替换为当前最新版本链接
    登录后复制

    如果遇到下载问题,可能是网络原因,尝试更换网络环境或使用代理。

  2. 解压到指定目录: 通常,Go的安装目录约定在

    /usr/local
    登录后复制
    下。首先,移除任何可能存在的旧Go安装(如果之前手动安装过),然后将下载的压缩包解压到
    /usr/local
    登录后复制

    sudo rm -rf /usr/local/go # 确保清理旧版本
    sudo tar -C /usr/local -xzf go1.22.3.linux-amd64.tar.gz # 同样替换为你的文件名
    登录后复制

    这一步完成后,Go的二进制文件和库文件就会被放置在

    /usr/local/go
    登录后复制
    目录下。

    立即学习go语言免费学习笔记(深入)”;

  3. 配置环境变量: 为了让系统能够找到

    go
    登录后复制
    命令,你需要将Go的
    bin
    登录后复制
    目录添加到
    PATH
    登录后复制
    环境变量中。我个人习惯修改
    ~/.profile
    登录后复制
    文件,因为它对所有shell都生效,当然你也可以选择
    ~/.bashrc
    登录后复制
    ~/.zshrc
    登录后复制
    ,这取决于你使用的shell。

    echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.profile
    登录后复制

    如果你希望自定义

    GOPATH
    登录后复制
    (Go的工作区路径),也可以在这里添加:

    echo 'export GOPATH=$HOME/go' >> ~/.profile # 推荐将GOPATH设置为用户主目录下的go文件夹
    echo 'export PATH=$PATH:$GOPATH/bin' >> ~/.profile # 将GOPATH/bin也加入PATH
    登录后复制

    完成修改后,需要重新加载配置文件,或者直接重启终端:

    source ~/.profile
    登录后复制
  4. 验证安装: 打开一个新的终端窗口,输入

    go version
    登录后复制
    命令。如果一切顺利,你应该能看到Go的版本信息。

    go version
    # 输出示例:go version go1.22.3 linux/amd64
    登录后复制

    同时,也可以检查

    GOPATH
    登录后复制
    是否设置正确:

    go env GOPATH
    # 输出示例:/home/youruser/go
    登录后复制

    如果这些命令都能正确输出,那么恭喜你,Go环境已经准备就绪了。

为什么不推荐使用
apt
登录后复制
安装 Golang?

坦白说,我最初接触Go的时候也习惯性地尝试用

sudo apt install golang
登录后复制
来安装。但很快我就发现,Ubuntu官方仓库中的Go版本往往不是最新的。开发Go项目时,我们常常需要用到一些新特性、性能优化,或者某些库可能依赖于较新的Go版本。
apt
登录后复制
仓库的Go版本更新周期相对较长,通常会滞后官方几个小版本甚至大版本。这就意味着,你可能安装了一个Go 1.18版本,而你需要的某个库却要求Go 1.20。这种版本不匹配的问题,会直接导致编译失败或者运行时出现意想不到的错误,非常影响开发效率。

通过手动安装,你总是能确保自己运行的是Go官方发布的最新稳定版,这不仅能让你享受到最新的语言特性和性能提升,也能更好地兼容社区中不断更新的Go模块。此外,手动安装也让你对Go的安装路径和环境变量有更精细的控制,这对于后续的Go版本管理或特定环境配置来说,是极其重要的。

如何管理多个 Golang 版本?

在实际开发中,尤其是在维护多个项目或尝试新特性时,你可能需要同时使用不同版本的Go。例如,一个老项目可能要求Go 1.18,而新项目则需要Go 1.22。在这种情况下,手动切换

PATH
登录后复制
变量显然不够优雅,甚至容易出错。我个人推荐使用
goenv
登录后复制
这样的版本管理工具来解决这个问题。

简篇AI排版
简篇AI排版

AI排版工具,上传图文素材,秒出专业效果!

简篇AI排版 554
查看详情 简篇AI排版

goenv
登录后复制
是一个轻量级的Go版本管理工具,它允许你在同一台机器上轻松安装、切换和管理多个Go版本。它的工作原理类似于
nvm
登录后复制
(Node.js)或
pyenv
登录后复制
(Python)。

  1. 安装

    goenv
    登录后复制
    通常可以通过
    git clone
    登录后复制
    到你的用户目录下:

    git clone https://github.com/go-nv/goenv.git ~/.goenv
    登录后复制
  2. 配置

    goenv
    登录后复制
    环境变量: 将以下内容添加到你的
    ~/.profile
    登录后复制
    (或
    ~/.bashrc
    登录后复制
    /
    ~/.zshrc
    登录后复制
    )文件中:

    echo 'export GOENV_ROOT="$HOME/.goenv"' >> ~/.profile
    echo 'export PATH="$GOENV_ROOT/bin:$PATH"' >> ~/.profile
    echo 'eval "$(goenv init -)"' >> ~/.profile
    登录后复制

    然后

    source ~/.profile
    登录后复制
    使其生效。

  3. 使用

    goenv
    登录后复制
    安装和切换Go版本: 现在你可以列出所有可用的Go版本,并安装你需要的版本:

    goenv install --list # 列出所有可安装的Go版本
    goenv install 1.22.3 # 安装Go 1.22.3
    goenv install 1.18.9 # 安装Go 1.18.9
    登录后复制

    安装完成后,你可以设置全局版本或为特定目录设置局部版本:

    goenv global 1.22.3 # 设置全局Go版本为1.22.3
    goenv local 1.18.9 # 在当前目录下设置Go版本为1.18.9
    登录后复制

    使用

    goenv versions
    登录后复制
    可以查看当前安装的所有Go版本,
    goenv version
    登录后复制
    则显示当前正在使用的版本。这种方式极大地简化了多版本Go环境的管理,避免了版本冲突带来的烦恼。

安装后如何验证 Golang 环境并运行第一个程序?

成功安装Go并配置好环境变量后,最直接的验证方式就是通过命令行工具。除了之前提到的

go version
登录后复制
go env GOPATH
登录后复制
,你还可以运行
go env
登录后复制
命令,它会显示所有Go相关的环境变量配置,这对于排查问题非常有帮助。如果
go env
登录后复制
输出了一大堆Go相关的配置信息,那就说明你的Go环境基本是健康的。

接下来,我们来运行一个经典的"Hello, Go!"程序,以确保Go编译器和运行时都正常工作。

  1. 创建项目目录: 在你的

    GOPATH
    登录后复制
    下(如果设置了
    GOPATH
    登录后复制
    ,通常是
    ~/go
    登录后复制
    ),或者你喜欢的任何位置,创建一个新的项目文件夹。

    mkdir -p ~/go/src/hello-go
    cd ~/go/src/hello-go
    登录后复制
  2. 创建Go源文件: 使用你喜欢的文本编辑器(例如

    nano
    登录后复制
    vim
    登录后复制
    或VS Code)创建一个名为
    main.go
    登录后复制
    的文件,并输入以下内容:

    package main
    
    import "fmt"
    
    func main() {
        fmt.Println("Hello, Go! It's working on Ubuntu 20.04.")
    }
    登录后复制

    这个程序非常简单,它导入了

    fmt
    登录后复制
    包(用于格式化I/O),然后在
    main
    登录后复制
    函数中打印一行问候语。

  3. 运行程序:

    main.go
    登录后复制
    所在的目录中,打开终端并执行以下命令:

    go run main.go
    登录后复制

    如果一切正常,你应该会在终端看到输出:

    Hello, Go! It's working on Ubuntu 20.04.
    登录后复制

    go run
    登录后复制
    命令会编译并直接运行Go程序。如果你想生成一个可执行文件,可以使用
    go build
    登录后复制

    go build -o my_hello_app main.go
    ./my_hello_app
    登录后复制

    这会在当前目录下生成一个名为

    my_hello_app
    登录后复制
    的可执行文件,然后你可以直接运行它。通过这些简单的步骤,你不仅验证了Go环境的正确性,也迈出了Go编程的第一步。

以上就是在Ubuntu 20.04上安装最新版Golang的最佳实践是什么的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号