安装Go语言常用工具

好的,这里是常用的Go工具,包括下载地址、在线安装指令和离线安装步骤。

1. gopls (Go language server)

  • 功能: 提供代码补全、跳转定义、文档提示等IDE功能。

  • 下载地址: golang.org/x/tools/gopls

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install golang.org/x/tools/gopls@latest

2. golint

  • 功能: 代码风格检查工具。

  • 下载地址: golang.org/x/lint/golint

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install golang.org/x/lint/golint@latest

3. goimports

  • 功能: 自动添加或删除导入包。

  • 下载地址: golang.org/x/tools/cmd/goimports

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install golang.org/x/tools/cmd/goimports@latest

4. staticcheck

  • 功能: 静态代码分析工具。

  • 下载地址 : honnef.co/go/tools/cmd/staticcheck

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install honnef.co/go/tools/cmd/staticcheck@latest

5. delve

  • 功能: Go程序的调试器。

  • 下载地址 : github.com/go-delve/delve

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install github.com/go-delve/delve/cmd/dlv@latest

6. errcheck

  • 功能: 检查未处理的错误。

  • 下载地址 : github.com/kisielk/errcheck

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install github.com/kisielk/errcheck@latest

7. revive

  • 功能: 代码风格检查工具,类似于golint,但更快且可配置。

  • 下载地址 : github.com/mgechev/revive

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install github.com/mgechev/revive@latest

8. gosec

  • 功能: 安全静态分析工具。

  • 下载地址 : github.com/securego/gosec

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install github.com/securego/gosec/v2/cmd/gosec@latest

9. golangci-lint

  • 功能: Go语言的聚合代码检查工具,包含多个linters。

  • 下载地址 : github.com/golangci/golangci-lint

  • 在线安装命令

    :

    复制代码
    sh
    复制代码
    go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest

离线安装步骤

Go 1.17及以后的版本中,go get不再用于安装二进制包。现在使用 go install 来安装工具包。离线安装工具的步骤会有所不同,因为你需要在联网环境中下载相关的模块缓存并转移到离线环境中。以下是更新后的步骤:

  1. 在有网络的环境中下载工具
    设置临时的 Go 模块缓存目录
    在有网络的环境中设置一个临时的 Go 模块缓存目录,并下载工具包所需的模块。

sh

复制代码

设置临时环境变量

export GOPATH= ( m k t e m p − d ) e x p o r t G O C A C H E = (mktemp -d) export GOCACHE= (mktemp−d)exportGOCACHE=(mktemp -d)

export GO111MODULE=on

下载工具所需的模块

go install golang.org/x/tools/gopls@latest

go install golang.org/x/lint/golint@latest

go install golang.org/x/tools/cmd/goimports@latest

go install honnef.co/go/tools/cmd/staticcheck@latest

go install github.com/go-delve/delve/cmd/dlv@latest

go install github.com/kisielk/errcheck@latest

go install github.com/mgechev/revive@latest

go install github.com/securego/gosec/v2/cmd/gosec@latest

go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest

打包模块缓存

将下载的模块缓存打包为一个压缩文件,例如gomodcache.zip。

sh

复制代码

cd $GOPATH/pkg/mod

zip -r gomodcache.zip .

  1. 将压缩文件复制到离线环境

将 gomodcache.zip 文件复制到离线环境中,并解压到相应的目录。

sh

复制代码

unzip gomodcache.zip -d /path/to/your/gopath/pkg/mod

  1. 在离线环境中安装工具

设置环境变量

在离线环境中,设置相应的环境变量,并使用解压后的模块缓存。

sh

复制代码

export GOPATH=/path/to/your/gopath

export GOCACHE=/path/to/your/gocache

export GO111MODULE=on

export PATH= P A T H : PATH: PATH:GOPATH/bin

安装工具

在离线环境中使用 go install 安装工具:

sh

复制代码

go install golang.org/x/tools/gopls@latest

go install golang.org/x/lint/golint@latest

go install golang.org/x/tools/cmd/goimports@latest

go install honnef.co/go/tools/cmd/staticcheck@latest

go install github.com/go-delve/delve/cmd/dlv@latest

go install github.com/kisielk/errcheck@latest

go install github.com/mgechev/revive@latest

go install github.com/securego/gosec/v2/cmd/gosec@latest

go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest

  1. 确认工具安装

确保工具已正确安装到 $GOPATH/bin 目录中。

sh

复制代码

ls $GOPATH/bin

你应该能够看到已编译的工具可执行文件,例如 gopls、golint、goimports 等。

相关推荐
Apifox1 小时前
如何在 Apifox 中通过 Runner 运行包含云端数据库连接配置的测试场景
前端·后端·ci/cd
uhakadotcom1 小时前
使用 Model Context Protocol (MCP) 构建 GitHub PR 审查服务器
后端·面试·github
车载小杜1 小时前
基于指针的线程池
开发语言·c++
沐知全栈开发1 小时前
Servlet 点击计数器
开发语言
m0Java门徒1 小时前
Java 递归全解析:从原理到优化的实战指南
java·开发语言
Asthenia04121 小时前
详细分析:ConcurrentLinkedQueue
后端
uhakadotcom1 小时前
Ruff:Python 代码分析工具的新选择
后端·面试·github
uhakadotcom1 小时前
Mypy入门:Python静态类型检查工具
后端·面试·github
喵个咪1 小时前
开箱即用的GO后台管理系统 Kratos Admin - 定时任务
后端·微服务·消息队列
Asthenia04121 小时前
ArrayList与LinkedList源码分析及面试应对策略
后端