IntelliJ IDEA 2025.1 Help

GOROOT 和 GOPATH

Go 工具期望源代码有特定的布局。 GOROOT 和 GOPATH 是定义此布局的环境变量。

GOROOT 是一个变量,定义了您的 Go SDK 的位置。 除非您计划使用不同的 Go 版本,否则无需更改此变量。

在 Go 开发中,GOPATH 变量在 Unix 上默认值为 $HOME/go ,在 Windows 上默认值为 %USERPROFILE%\go ,有几个用途:

  • 二进制文件通过 go install 安装到 $GOBIN, $GOBIN 默认为 $GOPATH/bin。

  • 模块会被 go get 缓存在 $GOMODCACHE 中,默认目录为 $GOPATH/pkg/mod。

  • go get 在 $GOPATH/pkg/sumdb 缓存校验和数据库状态。

有关 GOPATH 变量的详细信息,请参阅 go command 文档。

GOPATH 开发模式的概念,现在已被弃用,Go modules 是其前辈。 在 Go modules 之前,GOPATH 用于安装二进制文件和已编译的软件包,并下载源代码到指定路径。 有关使用 GOPATH 开发的更多信息,请参阅 go.dev 上的 GOPATH 开发模式。

请参考以下视频,我们将 Go SDK 从 1.16 Beta 1 更改为 1.20.1。

GOROOT

配置 GOROOT

  • 要查看当前的 GOROOT 值,请打开设置 (Ctrl+Alt+S) 并导航到 语言与框架 | Go GOROOT。 点击下拉列表并选择 Go 版本。

    如果没有可用的 Go 版本,请点击 添加 SDK 按钮 下载 Go 版本或 选择 Go SDK 本地副本的路径。

确保提供的 Go SDK 文件夹路径包含 bin 和 源 文件夹。

  1. 打开设置 (Ctrl+Alt+S ),导航至 语言与框架 | Go GOROOT。

  2. 点击 添加SDK 按钮 添加 SDK 按钮 并选择 本地。

  3. 在文件浏览器中,导航到硬盘上的 SDK 版本。

  4. 点击 打开。

    选择本地副本的 Go SDK

下载 Go SDK

  1. 打开设置 (Ctrl+Alt+S ),导航至 语言与框架 | Go GOROOT。

  2. 请点击 添加SDK 按钮(添加 SDK 图标 )并选择 下载。

  3. 从 版本 列表中选择 SDK 版本。

  4. 在 位置 字段中,指定 SDK 的路径。 要使用文件浏览器,请点击 浏览 图标 “浏览”图标。

  5. 点击 OK 关闭 下载Go SDK 对话框。

    当您点击 应用 或 OK 页面上的 GOROOT 时,IntelliJ IDEA 将开始下载和解压 Go SDK。

    下载 Go SDK

使用 asdf

asdf 是一种管理多种编程语言和工具多个版本的工具。 它允许在不同项目间切换不同的 Go 版本。 此外, asdf 可以设置不同的范围: asdf global ,为整个系统设置一个默认版本,以及 asdf local ,为特定目录设置一个版本。

IntelliJ IDEA 支持 asdf local 和 asdf global 命令,包括指定多个版本(例如, asdf local golang 1.21.0 1.20.8)。

为项目选择一个 asdf Go 版本

  1. 通过按下 Ctrl+Alt+S 打开设置,并导航到 Go | GOROOT。 .

  2. 从列表中选择您需要的 Go 版本。

GOPATH

为不同范围配置 GOPATH

您可以为以下范围配置 GOPATH:

  • 全局GOPATH :设置适用于 IntelliJ IDEA 的特定安装的所有项目。

  • 项目GOPATH :设置仅应用于当前项目。

  • 模块GOPATH :设置仅适用于一个模块。 一个模块可以拥有与项目配置的 SDK 不同的 SDK。 它们也可以承载特定的技术或框架。

设置类型

如果您指定了所有三个 scopes,IntelliJ IDEA 会优先选择最窄的 scope。

  1. 打开设置 (Ctrl+Alt+S ),导航至 语言与框架 | Go GOPATH。

  2. 根据您想要应用的范围,选择相应的部分(全局GOPATH、 项目GOPATH 或 模块GOPATH )并点击按钮 添加 "添加"按钮。

  3. 在文件浏览器中,导航到您想要与 GOPATH 关联的目录。

    在以下示例中,我们配置了在不同范围内使用不同的 GOPATH 目录。 IntelliJ IDEA 将使用 模块GOPATH ,因为这是配置的最窄范围。

    为不同范围配置 GOPATH
最后修改日期: 2025年 4月 24日